home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1994 #2
/
Monster Media No. 2 (Monster Media)(1994).ISO
/
pcboard
/
edsb121b.zip
/
EDSFILE.001
(
.txt
)
next >
Wrap
PCBoard Programming Language Executable
|
1994-05-01
|
59KB
|
3,643 lines
;------------------------------------------------------------------------------
; .ss.
; `²²'
; .,sS$Ss,,s$ .,sS$$$Ss. .,sS$Ss,,s$ .ss. .sSs.
; .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
; $$$' .$$$' $$$²Sçsµ²' .$$$' .$$$'.$$$' .$$$' `$$b.
; $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$' ;$$$
; `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
; .sS²°$$$²²°"' d²°'
; .$$² .$$'
; $$$.,d$$'
; `²S$$S²'
;------------------------------------------------------------------------------
; P.P.L.X. 2.OO (C)1996 - Lone Runner / AEGiS CoRP'96
;------------------------------------------------------------------------------
; PPE 2.OO (plain) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
Boolean BOOLEAN001
Boolean BOOLEAN002
Boolean BOOLEAN003
Boolean BOOLEAN004
Boolean BOOLEAN005
Boolean BOOLEAN006
Boolean BOOLEAN007
Boolean BOOLEAN008
Boolean BOOLEAN009
Boolean BOOLEAN010
Boolean BOOLEAN011
Boolean BOOLEAN012
Boolean BOOLEAN013
Boolean BOOLEAN014
Boolean BOOLEAN015
Boolean BOOLEAN016
Boolean BOOLEAN017
Boolean BOOLEAN018
Boolean BOOLEAN019
Boolean BOOLEAN020
Boolean BOOLEAN021
Boolean BOOLEAN022
Boolean BOOLEAN023
Boolean TBOOLEAN024(4)
Boolean TBOOLEAN025(3)
Boolean BOOLEAN026
Boolean BOOLEAN027
Boolean BOOLEAN028
Boolean BOOLEAN029
Boolean BOOLEAN030
Boolean BOOLEAN031
Boolean BOOLEAN032
Boolean BOOLEAN033
Date DATE002
Date DATE003
Date TDATE004(5)
Date DATE005
Date DATE006
Date DATE007
Date DATE008
Date DATE009
Integer INTEGER003
Integer INTEGER004
Integer INTEGER005
Integer INTEGER006
Integer INTEGER007
Integer INTEGER008
Integer INTEGER009
Integer INTEGER010
Integer INTEGER011
Integer INTEGER012
Integer INTEGER013
Integer INTEGER014
Integer INTEGER015
Integer INTEGER016
Real REAL001
String STRING006
String STRING007
String STRING008
String STRING009
String STRING010
String STRING011
String STRING012
String STRING013
String STRING014
String STRING015
String STRING016
String STRING017
String STRING018
String STRING019
String STRING020
String STRING021
String STRING022
String STRING023
String STRING024
String TSTRING025(6)
String STRING026
String TSTRING027(11)
String STRING028
String STRING029
String STRING030
Time TIME001
Time TTIME002(5)
Time TIME003
Time TIME004
Time TIME005
Byte BYTE001
Byte BYTE002
Byte BYTE003
Byte BYTE004
Byte BYTE005
Byte BYTE006
Byte BYTE007
Byte BYTE008
Byte BYTE009
Byte BYTE010
Byte BYTE011
Byte BYTE012
Byte BYTE013
Byte BYTE014
Byte BYTE015
Byte BYTE016
Byte BYTE017
Byte TBYTE018(1)
Byte BYTE019
Byte BYTE020
Byte TBYTE021(5)
Byte BYTE022
Byte BYTE023
Byte BYTE024
Word WORD001
Word WORD002
Word WORD003
Word WORD004
Word WORD005
Word WORD006
Word WORD007
Word WORD008
Word WORD009
Word WORD010
BOOLEAN015 = 0
GetUser
BOOLEAN001 = 0
BOOLEAN002 = 0
STRING026 = ReadLine(PCBDat(), 53)
STRING021 = Strip(Strip(Strip(Strip(Strip(U_HVPhone, " "), "("), ")"), "-"), "+")
STRING022 = Strip(Strip(Strip(Strip(Strip(U_BDPhone, " "), ")"), "("), "-"), "+")
DATE009 = 0
BOOLEAN008 = 0
GetToken STRING008
If (Strip(Upper(STRING008), " ") == "CBONLY") BOOLEAN008 = 1
If (Exist(PPEPath() + "EDSBTXT" + LangExt())) Goto LABEL003
If (Exist(PPEPath() + "EDSBTXT")) Goto LABEL001
PrintLn "@X0CEDSBACK FATAL ERROR: EDSBTXT" + LangExt() + " not found!"
Log "EDSBACK FATAL ERROR: EDSBTXT" + LangExt() + " not found!", 0
PrintLn
Wait
Goto LABEL118
Goto LABEL002
:LABEL001
FOpen 5, PPEPath() + "EDSBTXT", 0, 0
If (Ferr(5)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText "EDSBTXT"
WORD004 = 9
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
PrintLn
WORD004 = 8
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " EDSBTXT", 0
WORD004 = 27
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
FClose 5
Goto LABEL118
Endif
:LABEL002
Goto LABEL004
:LABEL003
FOpen 5, PPEPath() + "EDSBTXT" + LangExt(), 0, 0
If (Ferr(5)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText "EDSBTXT" + LangExt()
WORD004 = 9
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
PrintLn
WORD004 = 8
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " EDSBTXT" + LangExt() , 0
WORD004 = 27
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
FClose 5
Goto LABEL118
Endif
:LABEL004
WORD004 = 1
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 60
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " " + String(Time()) , 0
Gosub LABEL112
Gosub LABEL068
RdUNet PcbNode()
If (BOOLEAN005) Then
WrUNet PcbNode(), "B", UN_Name(), "EDSBack v1.21b ", "EDSBack Initializing...", ""
Else
WrUNet PcbNode(), UN_Stat(), UN_Name(), "EDSBack v1.21b ", "EDSBack Initializing...", ""
Endif
RdUNet PcbNode()
AdjTime WORD008
BYTE019 = 1
Gosub LABEL100
If (BOOLEAN022) Then
PrintLn
WORD004 = 58
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 59
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
Goto LABEL118
Endif
Gosub LABEL092
Gosub LABEL094
Gosub LABEL096
If (BOOLEAN023) Gosub LABEL103
:LABEL005
If (BOOLEAN001) Goto LABEL015
STRING008 = "C"
If (BOOLEAN032) Goto LABEL006
WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "EDSBack Main Menu", ""
DispFile PPEPath() + "EDSWC", 2 + 1 + 4
WORD004 = 15
Gosub LABEL114
BOOLEAN011 = 0
InputStr STRING029 + STRING012, STRING008, 0, 1, "RrCcGgEeHh", 2 + 4 + 256
Goto LABEL007
:LABEL006
STRING008 = "C"
BOOLEAN032 = 0
:LABEL007
Select Case (Upper(STRING008))
Case "R"
BOOLEAN011 = 0
If (TBOOLEAN025(1)) Then
BOOLEAN001 = 1
Goto LABEL118
Else
WORD004 = 54
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
BOOLEAN001 = 0
Endif
STRING008 = "R"
Case "H"
BOOLEAN001 = 0
BOOLEAN011 = 0
WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Viewing Help File...", ""
DispFile TSTRING027(7), 1 + 2 + 4
STRING008 = "H"
Case "G"
BOOLEAN011 = 0
If (TBOOLEAN025(0)) Then
BOOLEAN001 = 1
WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Goodbye in EDSBack...", ""
Bye
Else
BOOLEAN001 = 0
WORD004 = 54
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
Endif
STRING008 = "G"
Case "E"
BOOLEAN001 = 0
BOOLEAN011 = 0
If (BOOLEAN031) Goto LABEL008
WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Viewing Information...", ""
Gosub LABEL070
Goto LABEL009
:LABEL008
WORD004 = 54
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
:LABEL009
STRING008 = "E"
Case "C"
BOOLEAN001 = 0
BOOLEAN011 = 1
WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Selecting Number...", ""
Gosub LABEL071
STRING008 = "C"
End Select
If (BOOLEAN011) Then
Cls
DispFile PPEPath() + "SCDISP", 1 + 4
WORD004 = 2
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029 + " "
KbdChkOff
Gosub LABEL076
Gosub LABEL077
If (BOOLEAN014) Then
WORD004 = 32
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 35
Gosub LABEL114
If (BOOLEAN027) Log STRING010 + "-" + STRING011 + "-" + STRING020 + " " + STRING029, 0
If (BOOLEAN030) Then
MPrintLn
Color 15
MPrint "Please wait for 5 seconds"
SPrintLn Chr(27) + +"[2J"
SPrintLn
SPrintLn " ┌───────────────────────────────────────────────────┐"
SPrintLn " │ │"
SPrint " │ "
Color 12
SPrint "ATTENTION SYSOP "
Color 15
SPrintLn "│"
SPrintLn " │ │"
SPrint " │ "
Color 10
SPrint "The user online has entered a number "
Color 15
SPrintLn "│"
SPrint " │ "
Color 10
SPrint "that was found in the bad numbers database! "
Color 15
SPrintLn "│"
SPrintLn " │ │"
SPrintLn " └───────────────────────────────────────────────────┘"
SPrintLn
INTEGER003 = Time()
While (Time() - INTEGER003 <= 6) Do
Sound 700
Delay 2
Sound 300
Delay 2
EndWhile
Sound 0
MPrintLn
Goto LABEL010
Endif
Delay 15
:LABEL010
WORD004 = 31
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
If (BOOLEAN006) Then
Gosub LABEL119
Bye
Goto LABEL011
Endif
Goto LABEL118
Endif
:LABEL011
PrintLn
Gosub LABEL080
WORD004 = 70
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
If (BOOLEAN018 && !TBOOLEAN025(2)) Then
If (TBOOLEAN025(3)) Then
WORD004 = 3
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
OpText STRING028
WORD004 = 55
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
OpText String(DATE003)
WORD004 = 56
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
OpText String(TIME001)
WORD004 = 57
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
Newline
WORD004 = 31
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
Newline
Wait
Goto LABEL012
Endif
WORD004 = 3
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
PrintLn
WORD004 = 31
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
Newline
Wait
:LABEL012
Goto LABEL118
Endif
If (BOOLEAN017 && BOOLEAN012) Then
BYTE019 = 2
BOOLEAN022 = 0
Gosub LABEL100
If (BOOLEAN022) Then
WORD004 = 48
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
WORD004 = 28
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
If (!OnLocal() || BOOLEAN004) Then
WORD004 = 21
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
If (BYTE007 <> 0) U_Sec = BYTE007
If (BYTE008 <> 0) U_ExpSec = BYTE008
If (DATE009 <> 0) U_ExpDate = DATE009
PutUser
Endif
Delay 15
Goto LABEL118
Endif
If (BOOLEAN014) Then
OpText String(BYTE007)
WORD004 = 4
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
If (!OnLocal() || BOOLEAN004) Then
WORD004 = 21
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
If (BYTE007 <> 0) U_Sec = BYTE007
If (BYTE008 <> 0) U_ExpSec = BYTE008
If (DATE009 <> 0) U_ExpDate = DATE009
PutUser
Endif
Delay 15
Goto LABEL118
Endif
Else
If (BOOLEAN014) Goto LABEL013
BYTE019 = 2
BOOLEAN022 = 0
Gosub LABEL100
If (BOOLEAN022) Then
OpText String(BYTE007)
WORD004 = 48
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
WORD004 = 28
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
If (!OnLocal() || BOOLEAN004) Then
WORD004 = 21
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
If (BYTE007 <> 0) U_Sec = BYTE007
If (BYTE008 <> 0) U_ExpSec = BYTE008
If (DATE009 <> 0) U_ExpDate = DATE009
PutUser
Endif
Delay 15
Goto LABEL118
Endif
Goto LABEL014
:LABEL013
If (BOOLEAN014) Then
OpText String(BYTE007)
WORD004 = 4
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 5
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
If (!OnLocal() || BOOLEAN004) Then
WORD004 = 21
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
If (BYTE007 <> 0) U_Sec = BYTE007
If (BYTE008 <> 0) U_ExpSec = BYTE008
If (DATE009 <> 0) U_ExpDate = DATE009
PutUser
Endif
Delay 15
Goto LABEL118
Endif
Endif
:LABEL014
Else
Goto LABEL005
:LABEL015
Goto LABEL118
Endif
Color 7
If (BOOLEAN012 && BOOLEAN017) Then
OpText STRING017 + "-" + STRING006 + "-" + STRING007
Else
OpText STRING010 + "-" + STRING011 + "-" + STRING020
Endif
DispFile PPEPath() + "EDSCAL", 1 + 4
WORD004 = 36
Gosub LABEL114
Delay 50
If (BOOLEAN027) Log STRING029 + " " + String(Time()) , 0
If (BOOLEAN012 && BOOLEAN017) Then
STRING008 = "(" + STRING018 + ") " + STRING017 + "-" + STRING006 + "-" + STRING007
Else
STRING008 = "(" + STRING018 + ") " + STRING010 + "-" + STRING011 + "-" + STRING020
Endif
WrUNet PcbNode(), UN_Stat(), UN_Name(), "Undergoing callback...", STRING008, ""
Gosub LABEL115
BOOLEAN020 = 0
BYTE004 = 0
If (OnLocal()) Goto LABEL028
CdChkOff
While (!BOOLEAN020 && (BYTE004 < BYTE003)) Do
KeyFlush
Color 7
DtrOff
BOOLEAN002 = 0
INTEGER006 = 0
Color 7
SPrint Chr(27) + "[7;51H"
Color 155
SPrint "Yes"
Color 7
While (!BOOLEAN002 && (INTEGER006 < BYTE012)) Do
Inc INTEGER006
INTEGER010 = 0
While (INTEGER010 <= WORD003) Do
Inc INTEGER010
Delay 1
If (CDOn()) Then
BOOLEAN002 = 0
Continue
Endif
BOOLEAN002 = 1
INTEGER010 = WORD003 + 1
EndWhile
EndWhile
Delay 65
If (BYTE004 >= 1) Delay 30
Color 7
SPrint Chr(27) + "[7;51H"
Color 27
SPrint "No "
If (BOOLEAN002) Goto LABEL016
Color 7
SPrint Chr(27) + "[11;15H"
Color 27
SPrint "Hangup failed... Dropping carrier... "
Delay 4
Gosub LABEL119
Bye
:LABEL016
Delay 7
Color 7
SPrint Chr(27) + "[16;64H"
Color 28
SPrint "NONE "
Color 7
SPrint Chr(27) + "[19;64H"
Color 28
SPrint "NONE "
Color 7
SPrint Chr(27) + "[11;15H"
Color 23
DtrOn
KeyFlush
BOOLEAN019 = 0
If ((STRING023 <> "") && (STRING023 <> "NONE")) Then
SPrint "Initializing modem... "
Delay 4
STRING023 = Trim(Upper(STRING023), " ")
SendModem STRING023 + Chr(13)
Color 7
SPrint Chr(27) + "[7;51H"
Color 155
SPrint "Yes"
STRING008 = ""
INTEGER006 = 0
While ((Len(STRING008) < 2) && (INTEGER006 <= 100)) Do
STRING008 = STRING008 + Chr(MGetByte())
STRING008 = Strip(Strip(Strip(STRING008, Chr(10)), Chr(13)), " ")
Delay 1
Inc INTEGER006
EndWhile
If (Mid(STRING008, 1, 2) == "OK") Then
BOOLEAN019 = 1
Goto LABEL017
Endif
BOOLEAN019 = 0
:LABEL017
Color 7
SPrint Chr(27) + "[7;51H"
Color 27
SPrint "No "
If (BOOLEAN019) Goto LABEL018
Color 7
SPrint Chr(27) + "[11;15H"
Color 23
SPrint "Error occurred during initialization... Halting... "
WORD004 = 37
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " " + String(Time()) , 0
Delay 10
KeyFlush
Gosub LABEL119
Bye
:LABEL018
Color 7
SPrint Chr(27) + "[11;15H"
Color 23
Delay 5
KeyFlush
Endif
STRING008 = ""
For INTEGER006 = 0 To 5
If (TBYTE021(INTEGER006) == 1) Then
STRING008 = STRING008 + STRING014
Continue
Endif
If (TBYTE021(INTEGER006) == 2) Then
STRING008 = STRING008 + STRING024
Continue
Endif
If (TBYTE021(INTEGER006) == 3) Then
If (BOOLEAN017 && BOOLEAN012) Then
STRING008 = STRING008 + STRING017
Goto LABEL019
Endif
STRING008 = STRING008 + STRING010
:LABEL019
Continue
Endif
If (TBYTE021(INTEGER006) == 4) Then
If (BOOLEAN017 && BOOLEAN012) Then
STRING008 = STRING008 + STRING006
Goto LABEL020
Endif
STRING008 = STRING008 + STRING011
:LABEL020
Continue
Endif
If (TBYTE021(INTEGER006) == 5) Then
If (BOOLEAN017 && BOOLEAN012) Then
STRING008 = STRING008 + STRING007
Goto LABEL021
Endif
STRING008 = STRING008 + STRING020
:LABEL021
Continue
Endif
If (TBYTE021(INTEGER006) == 6) Then
STRING008 = STRING008 + STRING015
Endif
Next
STRING008 = Upper(Strip(STRING008, " "))
If (STRING008 == "") Then
Color 7
SPrint Chr(27) + "[11;40H"
Color 23
SPrint "Dialing template does not contain dialing info! "
Delay 10
Log "EDSBack could not dial! No info defined!", 0
Goto LABEL119
Bye
Endif
If (BYTE004 == 0) Then
SPrint Left("Dialing " + STRING008 + Space(55), 55)
Delay 9
WORD004 = 63
Gosub LABEL114
Log STRING029 + String(Time()), 0
Delay 5
Endif
Inc BYTE004
If (BYTE004 > 1) Then
Color 7
SPrint Chr(27) + "[11;15H"
Color 23
SPrint Left("Redialing " + STRING008 + Space(55), 55)
Delay 9
Color 7
SPrint Chr(27) + "[11;40H"
Color 23
SPrint "Try #" + String(BYTE004) + " "
WORD004 = 38
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " " + String(Time()) , 0
Delay 4
Endif
WORD004 = 49
Gosub LABEL114
Log STRING029 + Upper(STRING016) + STRING008, 0
Delay 9
KeyFlush
SendModem Upper(STRING016) + STRING008 + Chr(13)
Delay 9
WORD001 = 0
Color 7
SPrint Chr(27) + "[7;51H"
Color 155
SPrint "Yes"
Delay 54
Color 7
SPrint Chr(27) + "[7;51H"
Color 27
SPrint "No "
Color 7
SPrint Chr(27) + "[11;15H"
Color 23
SPrint "Waiting for connection... Countdown: "
SPrint Chr(27) + "[11;53H"
Color 28
SPrint String(WORD002)
STRING009 = ""
KeyFlush
STRING019 = ""
While (WORD001 <= WORD002) Do
Color 28
STRING008 = STRING008 + Chr(MGetByte())
STRING008 = Upper(Trim(STRING008, " "))
STRING019 = KInkey()
If (STRING019 == Chr(27)) Then
Color 7
SPrint Chr(27) + "[11;15H"
Color 27
SPrint "(L)ockout caller, (E)xit EDSBack, (C)ancel operation? "
STRING019 = ""
While (STRING019 == "") Do
STRING019 = Upper(KInkey())
If (STRING019 == "L") Then
U_Sec = 0
Color DefColor()
Cls
PutUser
Gosub LABEL119
Bye
Continue
Endif
If (STRING019 == "E") Then
Gosub LABEL119
Bye
Continue
Endif
If (STRING019 == "C") Then
RestScrn
KbdFlush
Color 7
SPrint Chr(27) + "[11;15H"
Color 23
SPrint "Waiting for connection... Countdown: "
Continue
Endif
STRING019 = ""
EndWhile
STRING019 = ""
Endif
SPrint Chr(27) + "[11;53H"
SPrint String(WORD002 - WORD001)
INTEGER007 = Len(String(WORD002)) - Len(String(WORD002 - WORD001))
SPrint Space(INTEGER007)
If ((Len(STRING008) > 3) && (Mid(STRING008, Len(STRING008), 1) == Chr(10))) Then
STRING008 = Strip(Strip(STRING008, Chr(10)), Chr(13))
STRING009 = STRING009 + STRING008
STRING008 = Strip(STRING008, " ")
Color 7
SPrint Chr(27) + "[11;15H"
Color 23
If (STRING008 == "BUSY") Then
SPrintLn "Number is Busy... "
KeyFlush
Delay 4
BOOLEAN020 = 0
WORD001 = WORD002 + 1
Goto LABEL027
Endif
If (STRING008 == "RING") Then
KeyFlush
Delay 4
BOOLEAN020 = 0
WORD001 = WORD002 + 1
Goto LABEL027
Endif
If (STRING008 == "NODIALTONE") Then
SPrintLn "No Dialtone was Detected... "
KeyFlush
Delay 4
BOOLEAN020 = 0
WORD001 = WORD002 + 1
Goto LABEL027
Endif
If (STRING008 == "NOCARRIER") Then
SPrintLn "No carrier detected... "
KeyFlush
Delay 4
BOOLEAN020 = 0
WORD001 = WORD002 + 1
Goto LABEL027
Endif
If (Mid(STRING008, 1, 4) == "CONN") Then
WORD001 = 0
BOOLEAN026 = 0
SPrintLn "Link established... Pausing "
Color 7
SPrint Chr(27) + "[16;64H"
Color 28
SPrint Left(Trim(STRING026, " ") + Space(8), 8)
Color 7
SPrint Chr(27) + "[19;64H"
Color 28
SPrint Left(String(Carrier()) + Space(8), 8)
WrUNet PcbNode(), UN_Stat(), UN_Name(), "Undergoing verification...", "CONNECT : " + Trim(STRING026, " ") + " CARRIER : " + String(Carrier()), ""
:LABEL022
If (BOOLEAN026) Goto LABEL024
SPrint Chr(27) + "[11;44H"
SPrint String(WORD005 - WORD001)
INTEGER007 = Len(String(WORD005)) - Len(String(WORD005 - WORD001))
SPrint Space(INTEGER007)
If (WORD001 >= WORD005) Then
BOOLEAN026 = 1
Goto LABEL023
Endif
BOOLEAN026 = 0
:LABEL023
Delay 1
Inc WORD001
Goto LABEL022
:LABEL024
WORD004 = 39
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " " + String(Time()) , 0
Color 7
SPrint Chr(27) + "[7;51H"
Color 155
SPrint "Yes"
Delay 40
If (Carrier() < 4800) Delay 30
Color 7
SPrint Chr(27) + "[7;51H"
Color 27
SPrint "No "
BOOLEAN020 = 1
KeyFlush
If (BOOLEAN008) Goto LABEL025
Gosub LABEL061
CdChkOn
KbdChkOn
Gosub LABEL062
Gosub LABEL031
Goto LABEL118
Goto LABEL026
:LABEL025
Gosub LABEL102
CdChkOn
KbdChkOn
Goto LABEL118
:LABEL026
Goto LABEL027
Endif
STRING008 = ""
Endif
:LABEL027
Delay 1
Inc WORD001
EndWhile
EndWhile
If (!BOOLEAN020 && (BYTE004 >= BYTE003)) Then
Gosub LABEL119
Bye
Endif
Goto LABEL030
:LABEL028
Color 7
SPrint Chr(27) + "[11;15H"
Color 23
SPrint "Local caller detected... Press any key to continue "
While (KInkey() == "") Do
EndWhile
If (BOOLEAN008) Goto LABEL029
Gosub LABEL061
CdChkOn
KbdChkOn
Gosub LABEL062
Gosub LABEL031
Goto LABEL118
Goto LABEL030
:LABEL029
Gosub LABEL102
CdChkOn
KbdChkOn
Goto LABEL118
:LABEL030
Goto LABEL118
:LABEL031
If ((BYTE020 <> 0) || (Trim(TSTRING027(11), " ") <> "")) Then
WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Executing external extension...", ""
WORD004 = 67
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
If (BYTE020 == 1) Then
SaveScrn
Call TSTRING027(11)
RestScrn
Goto LABEL032
Endif
If (BYTE020 == 2) Then
WrUSys
Shell 1, INTEGER006, TSTRING027(11), ""
RdUSys
If (Exist(PPEPath() + "USERS.SYS")) Delete PPEPath() + "USERS.SYS"
Endif
:LABEL032
WORD004 = 68
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + TSTRING027(11) , 0
Endif
WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Upgrading user...", ""
If (!OnLocal() || BOOLEAN004) Then
STRING028 = Upper(U_Name())
DATE003 = Date()
TIME001 = Time()
If (Exist(PPEPath() + "EDSSTATS.DAT")) Then
FOpen 1, PPEPath() + "EDSSTATS.DAT", 2, 2
If (Ferr(1)) Then
BOOLEAN019 = 1
Goto LABEL033
Endif
BOOLEAN019 = 0
:LABEL033
If (BOOLEAN019) Then
OpText "EDSSTATS.DAT"
WORD004 = 9
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 8
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " EDSSTATS.DAT", 0
WORD004 = 10
Gosub LABEL114
If ((BOOLEAN017 && BOOLEAN012) && BOOLEAN027) Then
Log STRING017 + STRING006 + STRING007 + " " + STRING029, 0
Goto LABEL034
Endif
Log STRING010 + STRING011 + STRING020 + " " + STRING029, 0
:LABEL034
FClose 1
Return
Endif
FSeek 1, 47, 0
FRead 1, INTEGER006, 4
Inc INTEGER006
FSeek 1, -4, 1
FWrite 1, INTEGER006, 4
FSeek 1, 39, 1
FRead 1, STRING008, 25
FRead 1, DATE005, 2
FRead 1, TIME003, 4
For INTEGER006 = 1 To 4
FSeek 1, -62, 1
FWrite 1, STRING008, 25
FWrite 1, DATE005, 2
FWrite 1, TIME003, 4
FSeek 1, 31, 1
FRead 1, STRING008, 25
FRead 1, DATE005, 2
FRead 1, TIME003, 4
Next
FSeek 1, -62, 1
FWrite 1, STRING008, 25
FWrite 1, DATE005, 2
FWrite 1, TIME003, 4
FWrite 1, STRING028, 25
FWrite 1, DATE003, 2
FWrite 1, TIME001, 4
Goto LABEL037
Endif
FCreate 1, PPEPath() + "EDSSTATS.DAT", 2, 2
If (Ferr(1)) Then
BOOLEAN019 = 1
Goto LABEL035
Endif
BOOLEAN019 = 0
:LABEL035
If (BOOLEAN019) Then
OpText "EDSSTATS.DAT"
WORD004 = 9
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 8
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " EDSSTATS.DAT", 0
WORD004 = 10
Gosub LABEL114
If ((BOOLEAN017 && BOOLEAN012) && BOOLEAN027) Then
Log STRING017 + STRING006 + STRING007 + " " + STRING029, 0
Goto LABEL036
Endif
Log STRING010 + STRING011 + STRING020 + " " + STRING029, 0
:LABEL036
FClose 1
Return
Endif
FSeek 1, 0, 0
FWrite 1, " EDSBack v1.21 Statistical Control File " + Chr(13) + Chr(10) + Chr(32) + Chr(26) + Chr(0), 47
FWrite 1, 1, 4
FWrite 1, 0, 4
FWrite 1, 0, 4
For INTEGER006 = 1 To 5
FWrite 1, "N/A", 25
FWrite 1, 0, 2
FWrite 1, 0, 4
Next
FWrite 1, Upper(U_Name()), 25
FWrite 1, Date(), 2
FWrite 1, Time(), 4
FWrite 1, Space(20), 20
:LABEL037
FClose 1
If (Exist(TSTRING027(0))) Then
INTEGER006 = (FileInf(TSTRING027(0), 4) - 37) / 59
BOOLEAN026 = 1
Goto LABEL038
Endif
INTEGER006 = 0
BOOLEAN026 = 0
:LABEL038
FOpen 1, TSTRING027(0), 1, 2
If (Ferr(1)) Then
BOOLEAN019 = 1
Goto LABEL039
Endif
BOOLEAN019 = 0
:LABEL039
If (BOOLEAN019) Then
OpText TSTRING027(0)
WORD004 = 9
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 8
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + TSTRING027(0) , 0
WORD004 = 10
Gosub LABEL114
If ((BOOLEAN017 && BOOLEAN012) && BOOLEAN027) Then
Log STRING017 + STRING006 + STRING007 + " " + STRING029, 0
Goto LABEL040
Endif
Log STRING010 + STRING011 + STRING020 + " " + STRING029, 0
:LABEL040
FClose 1
Return
Endif
If (Exist(PPEPath() + "TRASH.IDX")) Then
FOpen 2, PPEPath() + "TRASH.IDX", 1, 2
If (Ferr(2)) Then
BOOLEAN019 = 1
Goto LABEL041
Endif
BOOLEAN019 = 0
:LABEL041
If (BOOLEAN019) Then
OpText PPEPath() + "TRASH.IDX"
WORD004 = 9
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 8
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + PPEPath() + "TRASH.IDX", 0
WORD004 = 10
Gosub LABEL114
If ((BOOLEAN017 && BOOLEAN012) && BOOLEAN027) Then
Log STRING017 + STRING006 + STRING007 + " " + STRING029, 0
Goto LABEL042
Endif
Log STRING010 + STRING011 + STRING020 + " " + STRING029, 0
:LABEL042
FClose 1
FClose 2
Return
Endif
FSeek 2, 0, 2
Goto LABEL045
Endif
FCreate 2, PPEPath() + "TRASH.IDX", 1, 2
If (Ferr(2)) Then
BOOLEAN019 = 1
Goto LABEL043
Endif
BOOLEAN019 = 0
:LABEL043
If (BOOLEAN019) Then
OpText PPEPath() + "TRASH.IDX"
WORD004 = 9
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 8
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + PPEPath() + "TRASH.IDX", 0
WORD004 = 10
Gosub LABEL114
If ((BOOLEAN017 && BOOLEAN012) && BOOLEAN027) Then
Log STRING017 + STRING006 + STRING007 + " " + STRING029, 0
Goto LABEL044
Endif
Log STRING010 + STRING011 + STRING020 + " " + STRING029, 0
:LABEL044
FClose 1
FClose 2
Return
Endif
FSeek 2, 0, 0
FWrite 2, " EDSBack v1.21 Trash File Index " + Chr(13) + Chr(32) + Chr(10) + Chr(26) + Chr(0), 37
:LABEL045
If (BOOLEAN026) Then
FSeek 1, 0, 2
Goto LABEL046
Endif
FSeek 1, 0, 0
FWrite 1, " EDSBack v1.21 Binary Trash File" + Chr(13) + Chr(32) + Chr(10) + Chr(26) + Chr(0), 37
:LABEL046
FWrite 1, 0, 1
Inc INTEGER006
If (BOOLEAN017 && BOOLEAN012) Then
FWrite 1, 1, 1
FWrite 1, STRING017, 3
FWrite 1, STRING006, 4
FWrite 1, STRING007, 8
STRING008 = Upper(U_Name() + Space(25 - Len(U_Name())))
FWrite 1, STRING008, 25
FWrite 1, Date(), 2
FWrite 1, Time(), 4
INTEGER003 = S2I(STRING017, 10) + S2I(STRING006, 10) + S2I(STRING007, 10)
Goto LABEL047
Endif
FWrite 1, 0, 1
FWrite 1, STRING010, 3
FWrite 1, STRING011, 4
FWrite 1, STRING020, 8
STRING008 = Upper(U_Name())
STRING008 = STRING008 + Space(25 - Len(U_Name()))
FWrite 1, STRING008, 25
FWrite 1, Date(), 2
FWrite 1, Time(), 4
INTEGER003 = S2I(STRING010, 10) + S2I(STRING011, 10) + S2I(STRING020, 10)
:LABEL047
FWrite 2, INTEGER006, 4
FWrite 2, INTEGER003, 4
FWrite 1, Space(11), 11
FClose 1
FClose 2
WORD004 = 7
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
If (BYTE001 <> 0) U_Sec = BYTE001
If (DATE002 <> 0) U_ExpDate = DATE002
If (BYTE002 <> 0) U_ExpSec = BYTE002
If (BOOLEAN007) Then
If (BOOLEAN017 && BOOLEAN012) Then
U_BDPhone = STRING017 + STRING006 + STRING007
Goto LABEL048
Endif
U_BDPhone = STRING010 + "-" + STRING011 + "-" + STRING020
Endif
:LABEL048
If ((BYTE011 == 1) || (BYTE011 == 3)) Then
If (TBYTE018(0) == 1) Then
U_Cmnt1 = String(Date()) + " " + String(Time()) + " EDSBack v1.21b "
Goto LABEL049
Endif
If (TBYTE018(0) == 2) Then
U_Cmnt2 = String(Date()) + " " + String(Time()) + " EDSBack v1.21b "
Goto LABEL049
Endif
If (TBYTE018(0) == 10) Then
If (Psa(6)) U_Notes(0) = String(Date()) + " " + String(Time()) + " EDSBack v1.21b "
Goto LABEL049
Endif
If (TBYTE018(0) == 20) Then
If (Psa(6)) U_Notes(1) = String(Date()) + " " + String(Time()) + " EDSBack v1.21b "
Goto LABEL049
Endif
If (TBYTE018(0) == 30) Then
If (Psa(6)) U_Notes(2) = String(Date()) + " " + String(Time()) + " EDSBack v1.21b "
Goto LABEL049
Endif
If (TBYTE018(0) == 40) Then
If (Psa(6)) U_Notes(3) = String(Date()) + " " + String(Time()) + " EDSBack v1.21b "
Goto LABEL049
Endif
If (TBYTE018(0) == 50) Then
If (Psa(6)) U_Notes(4) = String(Date()) + " " + String(Time()) + " EDSBack v1.21b "
Endif
Endif
:LABEL049
If ((BYTE011 == 2) || (BYTE011 == 3)) Then
If (BOOLEAN017 && BOOLEAN012) Then
STRING008 = STRING017 + "-" + STRING006 + "-" + STRING007 + " EDSBack v1.21b "
Goto LABEL050
Endif
STRING008 = "(" + STRING010 + ")" + " " + STRING011 + "-" + STRING020 + " EDSBack v1.21b "
:LABEL050
If (TBYTE018(1) == 1) Then
U_Cmnt1 = STRING008
Goto LABEL051
Endif
If (TBYTE018(1) == 2) Then
U_Cmnt2 = STRING008
Goto LABEL051
Endif
If (TBYTE018(1) == 10) Then
If (Psa(6)) U_Notes(0) = STRING008
Goto LABEL051
Endif
If (TBYTE018(1) == 20) Then
If (Psa(6)) U_Notes(1) = STRING008
Goto LABEL051
Endif
If (TBYTE018(1) == 30) Then
If (Psa(6)) U_Notes(2) = STRING008
Goto LABEL051
Endif
If (TBYTE018(1) == 40) Then
If (Psa(6)) U_Notes(3) = STRING008
Goto LABEL051
Endif
If (TBYTE018(1) == 50) Then
If (Psa(6)) U_Notes(4) = STRING008
Endif
Endif
:LABEL051
PutUser
If (BYTE009 == 1) Then
FCreate 1, TempPath() + "EDS" + String(PcbNode()) + ".WRK", 1, 3
FPutLn 1, " @X0B" + U_Name() + " @X07 was verified on @X0C" + String(Date()) + " @X07at@X0C " + String(Time())
FPutLn 1, "@X07You may wish to give this user a personal greeting... His/Her new"
If (BYTE001 <> 0) Then
STRING008 = String(BYTE001)
Goto LABEL052
Endif
STRING008 = "N/A"
:LABEL052
FPutLn 1, "security level is @X09" + STRING008 + "@X07."
FPutLn 1
FPutLn 1, "Also, here are the user's address & phone numbers:"
FPutLn 1
If (Psa(3)) Goto LABEL053
FPutLn 1, "@X09Address PSA not installed..."
FPutLn 1
Goto LABEL054
:LABEL053
FPutLn 1, "@X07Address Line 1: @X09" + U_Addr(0)
FPutLn 1, "@X07Address Line 2: @X09" + U_Addr(1)
FPutLn 1, "@X07City: @X09" + U_Addr(2) + " @X07State: @X09" + U_Addr(3) + " @X07Zip: @X09" + U_Addr(4)
FPutLn 1, "@X07Country: @X09" + U_Addr(5)
FPutLn 1
:LABEL054
FPutLn 1, "@X07VOICE phone: @X0E" + U_HVPhone
FPutLn 1, "@X07DATA phone : @X0E" + U_BDPhone
FPutLn 1
FPutLn 1, "@X0CThank you for using EDSBack v1.21b!"
FPutLn 1
FPutLn 1, "@X0A---"
FPut 1, " # EDSBack v1.21b " + String(FileInf(PPEPath() + PPEName() + ".PPE", 2))
FPutLn 1, " " + String(FileInf(PPEPath() + PPEName() + ".PPE", 3))
FPutLn 1, " # @BOARDNAME@"
FClose 1
Message 0, "SYSOP", "EDSBACK v1.21b", "USER VERIFIED SUCCESSFULLY", "R", Date() + 5, 0, 0, TempPath() + "EDS" + String(PcbNode()) + ".WRK"
Delete TempPath() + "EDS" + String(PcbNode()) + ".WRK"
Goto LABEL055
Endif
If (BYTE009 == 2) Then
If ((TSTRING027(4) <> "") && (TSTRING027(4) <> "NONE")) Message 0, "SYSOP", "EDSBACK v1.21b", "USER VERIFIED SUCCESSFULLY", "R", Date() + 5, 0, 0, TSTRING027(4)
Endif
:LABEL055
If (BYTE010 == 1) Then
FCreate 1, TempPath() + "EDSU" + String(PcbNode()) + ".WRK", 1, 3
FPutLn 1, " Thanks for calling @FIRST@!"
FPutLn 1, "We hope you find your stay here enjoyable and we hope you call back"
FPutLn 1, "frequently! Your first time on here was on @X0B@LOGDATE@ @X07at@X0B @LOGTIME@@X07."
FPutLn 1
FPutLn 1, "@X0A---"
FPut 1, " # EDSBack v1.21b " + String(FileInf(PPEPath() + PPEName() + ".PPE", 2))
FPutLn 1, " " + String(FileInf(PPEPath() + PPEName() + ".PPE", 3))
FPutLn 1, " # @BOARDNAME@"
FClose 1
Message 0, U_Name(), "SYSOP", "WELCOME NEW USER", "R", Date() + 5, 0, 0, TempPath() + "EDSU" + String(PcbNode()) + ".WRK"
Delete TempPath() + "EDSU" + String(PcbNode()) + ".WRK"
Goto LABEL056
Endif
If (BYTE010 == 2) Then
If ((TSTRING027(5) <> "") && (TSTRING027(5) <> "NONE")) Message 0, U_Name() , "SYSOP", "WELCOME NEW USER", "R", Date() + 5, 0, 0, TSTRING027(5)
Endif
:LABEL056
If (EvtTimeAdj()) Goto LABEL058
If (BOOLEAN016) Then
AdjTime INTEGER005
Goto LABEL057
Endif
AdjTime INTEGER005 - MinLeft()
:LABEL057
Goto LABEL059
:LABEL058
WORD004 = 40
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
WORD004 = 34
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
:LABEL059
AdjDBytes INTEGER015
AdjTBytes INTEGER016
AdjTFiles WORD009
WORD004 = 29
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
If (BOOLEAN013) Then
WORD004 = 42
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " " + String(Time()) , 0
WORD004 = 30
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
Delay 15
Gosub LABEL119
Bye
Goto LABEL060
Endif
If ((TSTRING027(10) <> "") && (TSTRING027(10) <> "NONE")) Then
OpText FileInf(TSTRING027(10), 8)
WORD004 = 33
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
Newlines 2
Flag TSTRING027(10)
WORD004 = 41
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " " + FileInf(TSTRING027(10), 8) , 0
Delay 15
If (BOOLEAN029) Download ""
Endif
WORD004 = 31
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
Delay 5
Endif
:LABEL060
Return
:LABEL061
KeyFlush
Color 7
Cls
PrintLn "@X0F @X10┌──────────────────────────────────────@X19┐@X07"
PrintLn "@X0F @X10│ @X1AEDSBack v1.21b @X19│@X07"
PrintLn "@X0F @X10│ @X1FCopyright (@X1Bc@X1F) 1994 by GO/4 Software @X19│@X07"
PrintLn "@X0F @X10└@X19──────────────────────────────────────┘@X07"
PrintLn
Print "@X0C@BOARDNAME:80C@"
PrintLn
PrintLn "@X0C @X40┌───────────────────────────────────────────────────────────────────────@X4C┐@X07"
Print "@X0F @X40│ @X4FName : @X4E"
If (TBOOLEAN024(0)) Then
Print "N/A" + Space(24)
Else
Print "@REAL:27@"
Endif
Print "@X4FFrom : @X4E"
If (TBOOLEAN024(3)) Then
Print "N/A" + Space(26)
Else
Print "@CITY:29@"
Endif
PrintLn "@X4C│@X07"
PrintLn "@X0F @X40│@X4B───────────────────────────────────────────────────────────────────────@X4C│@X07"
Print "@X0F @X40│ @X4FCurrent Sec. Level : @X4E@SECURITY:11@"
Print "@X4FUpgraded Security Level : @X4E"
If (BYTE001 <> 0) Then
STRING008 = String(BYTE001)
Else
STRING008 = "N/A"
Endif
Print Left(STRING008 + Space(7), 7)
PrintLn "@X4C│@X07"
PrintLn "@X0F @X40│@X4B───────────────────────────────────────────────────────────────────────@X4C│@X07"
Print "@X0F @X40│ @X4FNew Expiration Date : @X4E"
Print Left(String(DATE002) + Space(11), 11)
Print "@X4FNew Expired Security Level : @X4E"
If (BYTE002 <> 0) Then
STRING008 = String(BYTE002)
Else
STRING008 = "N/A"
Endif
Print Left(STRING008 + Space(7), 7)
PrintLn "@X4C│@X07"
PrintLn "@X0F @X40│@X4B───────────────────────────────────────────────────────────────────────@X4C│@X07"
Print "@X0F @X40│ @X4FNumber Connect Tries : @X4E"
Print Left(String(BYTE004) + Space(8), 8)
Print "@X4F Hangup After Verification : @X4E"
If (BOOLEAN013) Then
Print "Yes "
Else
Print "No "
Endif
PrintLn "@X4C│@X07"
PrintLn "@X0F @X40│@X4B───────────────────────────────────────────────────────────────────────@X4C│@X07"
PrintLn "@X0F @X40└@X4C───────────────────────────────────────────────────────────────────────┘@X07"
PrintLn
Return
:LABEL062
Delay 18
INTEGER006 = 0
STRING008 = ""
BOOLEAN019 = 0
If (TBOOLEAN024(0)) Then
STRING009 = YesChar()
WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Verifying name...", ""
While (!BOOLEAN019 && (INTEGER006 < BYTE005)) Do
If (STRING009 == YesChar()) Inc INTEGER006
WORD004 = 11
Gosub LABEL114
KeyFlush
InputText STRING029 + STRING012, STRING008, 0, 25
STRING008 = Upper(Trim(STRING008, " "))
If (TBOOLEAN024(4) && (STRING008 <> "")) Then
If (U_Name() == STRING008) Then
STRING009 = YesChar()
PrintLn
PrintLn "@X07" + U_Name()
PrintLn U_City
PrintLn
KeyFlush
PromptStr 598, STRING009, 1, " ", 2 + 4 + 16384
If (Upper(STRING009) <> YesChar()) Then
PrintLn
Continue
Endif
Goto LABEL063
Endif
If (U_Alias == STRING008) Then
STRING009 = YesChar()
PrintLn
PrintLn "@X07" + U_Alias
PrintLn U_City
PrintLn
KeyFlush
PromptStr 598, STRING009, 1, " ", 2 + 4 + 16384
If (Upper(STRING009) <> YesChar()) Then
PrintLn
Continue
Endif
Endif
Endif
:LABEL063
If ((U_Name() == STRING008) && (STRING008 <> "")) Then
PrintLn
BOOLEAN019 = 1
Continue
Endif
If ((U_Alias == STRING008) && (STRING008 <> "")) Then
PrintLn
BOOLEAN019 = 1
Continue
Endif
OpText String(BYTE005 - INTEGER006)
WORD004 = 12
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
PrintLn
BOOLEAN019 = 0
EndWhile
If (BOOLEAN019) Goto LABEL064
WORD004 = 44
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
WORD004 = 13
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
Gosub LABEL119
Bye
Endif
:LABEL064
BOOLEAN019 = 0
INTEGER006 = 0
If (TBOOLEAN024(1)) Then
WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Verifying password...", ""
While (!BOOLEAN019 && (INTEGER006 < BYTE006)) Do
Inc INTEGER006
STRING008 = ""
KeyFlush
PromptStr 148, STRING008, 12, Mask_Pwd(), 1 + 2 + 4 + 256 + 4096
If (Upper(U_Pwd) == Upper(STRING008)) Then
PrintLn
BOOLEAN019 = 1
Continue
Endif
OpText String(BYTE006 - INTEGER006)
WORD004 = 14
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
PrintLn
BOOLEAN019 = 0
EndWhile
If (BOOLEAN019) Goto LABEL065
WORD004 = 45
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
WORD004 = 13
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
Gosub LABEL119
Bye
Endif
:LABEL065
BOOLEAN019 = 0
INTEGER006 = 0
If (TBOOLEAN024(2) && Psa(2)) Then
WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Verifying verification string...", ""
While (!BOOLEAN019 && (INTEGER006 < BYTE013)) Do
Inc INTEGER006
STRING008 = ""
KeyFlush
PromptStr 707, STRING008, 25, Mask_Ascii(), 2 + 4 + 4096
If (Upper(U_Ver) == Upper(STRING008)) Then
PrintLn
BOOLEAN019 = 1
Continue
Endif
OpText String(BYTE013 - INTEGER006)
WORD004 = 52
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
PrintLn
BOOLEAN019 = 0
EndWhile
If (BOOLEAN019) Goto LABEL066
WORD004 = 24
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
WORD004 = 13
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
Gosub LABEL119
Bye
Endif
:LABEL066
BOOLEAN019 = 0
INTEGER006 = 0
If (TBOOLEAN024(3)) Then
WrUNet PcbNode(), UN_Stat(), UN_Name(), UN_City(), "Verifying city...", ""
While (!BOOLEAN019 && (INTEGER006 < BYTE015)) Do
Inc INTEGER006
STRING008 = ""
KeyFlush
PromptStr 265, STRING008, 24, Mask_Ascii(), 2 + 4 + 4096
If (Upper(U_City) == Upper(STRING008)) Then
PrintLn
BOOLEAN019 = 1
Continue
Endif
OpText String(BYTE015 - INTEGER006)
WORD004 = 53
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
PrintLn
BOOLEAN019 = 0
EndWhile
If (BOOLEAN019) Goto LABEL067
WORD004 = 51
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
WORD004 = 13
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
Gosub LABEL119
Bye
Endif
:LABEL067
BOOLEAN019 = 1
Return
:LABEL068
If (Exist(PPEPath() + "EDSBACK.XXX")) Goto LABEL069
PrintLn
PrintLn "@X0CEDSBACK FATAL ERROR: @X0FEDSBACK.XXX DOES NOT EXIST!"
Log "EDSBack Fatal Error: EDSBACK.XXX does not exist!", 0
PrintLn
Wait
Goto LABEL118
:LABEL069
FOpen 1, PPEPath() + "EDSBACK.XXX", 0, 0
If (Ferr(1)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText "EDSBACK.XXX"
WORD004 = 9
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 8
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " EDSBACK.XXX", 0
WORD004 = 27
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
FClose 1
Goto LABEL118
Endif
WORD006 = 0
FDefIn 1
FSeek 1, 43, 0
FDRead STRING006, 3
FDRead BOOLEAN012, 1
FDRead STRING013, 25
FDRead INTEGER004, 4
FDRead STRING016, 30
FDRead STRING014, 30
FDRead STRING015, 30
FDRead BYTE003, 1
FDRead WORD002, 2
FDRead BOOLEAN016, 1
FDRead INTEGER005, 4
FDRead STRING023, 75
FDRead WORD003, 2
FDRead STRING024, 30
FDRead BYTE007, 1
FDRead TBYTE018(0), 1
FDRead TBYTE018(1), 1
For INTEGER006 = 0 To 11
FDRead TSTRING027(INTEGER006), 75
Next
FDRead BYTE005, 1
FDRead BYTE006, 1
FDRead BYTE013, 1
FDRead BYTE015, 1
FDRead BYTE009, 1
FDRead BYTE010, 1
FDRead INTEGER008, 4
FDRead INTEGER009, 4
FDRead BYTE011, 1
For INTEGER006 = 0 To 4
FDRead TBOOLEAN024(INTEGER006), 1
Next
FDRead BYTE012, 1
For INTEGER006 = 0 To 3
FDRead TBOOLEAN025(INTEGER006), 1
Next
FDRead WORD005, 2
FDRead BYTE020, 1
FDRead BOOLEAN004, 1
FDRead BOOLEAN005, 1
FDRead BOOLEAN006, 1
FDRead WORD008, 2
FDRead BYTE014, 1
FDRead BOOLEAN007, 1
FDRead INTEGER015, 4
FDRead INTEGER016, 4
FDRead WORD009, 2
FDRead BOOLEAN029, 1
FDRead BOOLEAN023, 1
FDRead BYTE008, 1
FDRead WORD006, 2
FClose 1
If (WORD006 <> 0) Then
DATE009 = Date() + WORD006
WORD006 = 0
Else
DATE009 = 0
WORD006 = 0
Endif
Return
:LABEL070
If (Exist(PPEPath() + "EDSSTATS.DAT")) Then
FOpen 1, PPEPath() + "EDSSTATS.DAT", 0, 0
If (Ferr(1)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText "EDSSTATS.DAT"
WORD004 = 9
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 8
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " EDSSTATS.DAT", 0
WORD004 = 27
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
FClose 1
Return
Endif
FSeek 1, 47, 0
FRead 1, INTEGER011, 4
FClose 1
Else
INTEGER011 = 0
Endif
Cls
PrintLn " @X10┌────────────────────────────────────────────────────────────────────────────@X19┐@X07"
PrintLn " @X10│ @X1F EDSBack v1.21b Informational Status Display @X19│@X07"
PrintLn " @X10└@X19────────────────────────────────────────────────────────────────────────────┘@X07"
PrintLn " @X10┌─────────────────────@X19┐ @X10┌───────────────────────────────────────────────────@X19┐@X07"
PrintLn " @X10│ @X1AExecutable Status @X19│ @X10│ @X1AEDSBack System File Stats @X19│@X07"
PrintLn " @X10│ @X1FName @X13" + Left(PPEName() + ".PPE" + Space(13), 13) + "@X19│ @X10│@X1EName Bytes Records @X19│@X07"
Print " @X10│ @X1FDate @X13" + String(FileInf(PPEPath() + PPEName() + ".PPE", 2)) + " @X19│ @X10│@X1FUsed # Trash @X13 " + Left(String(FileInf(TSTRING027(0), 4)) + Space(19), 19)
INTEGER003 = (FileInf(TSTRING027(0), 4) - 37) / 59
PrintLn Left(String(INTEGER003) + Space(13), 13) + "@X19│@X07"
Print " @X10│ @X1FTime @X13" + String(FileInf(PPEPath() + PPEName() + ".PPE", 3)) + " @X19│ @X10│@X1FBad # Trash @X13" + Left(String(FileInf(TSTRING027(3), 4)) + Space(19), 19)
INTEGER003 = (FileInf(TSTRING027(3), 4) - 41) / 19
PrintLn Left(String(INTEGER003) + Space(13), 13) + "@X19│@X07"
Print " @X10│ @X1FBytes @X13" + Left(String(FileInf(PPEPath() + PPEName() + ".PPE", 4)) + Space(13), 13) + "@X19│ @X10│@X1FAllowed #s @X13" + Left(String(FileInf(TSTRING027(1), 4)) + Space(19), 19)
INTEGER003 = (FileInf(TSTRING027(1), 4) - 41) / 29
PrintLn Left(String(INTEGER003) + Space(13), 13) + "@X19│@X07"
Print " @X10└@X19─────────────────────┘ @X10│@X1FDialing Templates @X13" + Left(String(FileInf(PPEPath() + "EDSDIAL.PLT", 4)) + Space(19), 19)
INTEGER003 = (FileInf(PPEPath() + "EDSDIAL.PLT", 4) - 41) / 28
PrintLn Left(String(INTEGER003) + Space(13), 13) + "@X19│@X07"
PrintLn " @X10┌─────────────────@X19┐ @X10└@X19───────────────────────────────────────────────────┘@X07"
PrintLn " @X10│ @X1FUsers Verified @X19└@X10──────────────────────────────────────@X19┐ @X10┌─────────────────@X19┐@X07"
STRING008 = ReadLine(PCBDat(), 29)
INTEGER003 = FileInf(STRING008, 4) / 400
PrintLn " @X10│ @X1F0%························50%·····················100% @X19│ @X10│@X1FUsers @X13" + Left(String(INTEGER003) + Space(8), 8) + "@X19│@X07"
If ((INTEGER011 <> 0) && (INTEGER003 <> 0)) Then
REAL001 = FmtReal((ToReal(INTEGER011) / ToReal(INTEGER003)) * ToReal(54), 1, 0)
Else
REAL001 = 0
Endif
Color 7
Print " @X10│ @X1C"
STRING008 = Space(REAL001)
STRING008 = Replace(STRING008, " ", "▓")
Print STRING008
PrintLn "@X0C" + Space(54 - ToInt(REAL001)) + "@X10 @X19│ @X10│@X1FVerified @X13" + Left(String(INTEGER011) + Space(8), 8) + "@X19│@X07"
PrintLn " @X10└@X19────────────────────────────────────────────────────────┘ @X10└@X19─────────────────┘@X07"
PrintLn " @X10┌────────────────────────────────────────────────────────────────────────────@X19┐@X07"
PrintLn " @X10│ @X1ARegistration Status @X19│@X07"
If (BOOLEAN015) Then
PrintLn " @X10│ @X1FSysop Name @X13" + Left(STRING013 + Space(28), 28) + "@X1EPlease thank your SysOp for @X19│@X07"
PrintLn " @X10│ @X1FReg. Code @X13" + Left(String(INTEGER004) + Space(28), 28) + "@X1Esupporting the shareware concept! @X19│@X07"
Else
PrintLn " @X10│ @X1FSysop Name @X13UNREGISTERED" + Space(16) + "@X1EPlease ask your SysOp how you can @X19│@X07"
PrintLn " @X10│ @X1FReg. Code @X13 COPY " + Space(16) + "@X1Ehelp register this product! @X19│@X07"
Endif
PrintLn " @X10└@X19────────────────────────────────────────────────────────────────────────────┘@X07"
PrintLn
Wait
Return
:LABEL071
BOOLEAN002 = 0
:LABEL072
If (BOOLEAN002) Goto LABEL074
BYTE017 = 0
BOOLEAN017 = 0
STRING008 = NoChar()
If (BOOLEAN012) Then
WORD004 = 16
Gosub LABEL114
InputYN STRING029 + STRING012, STRING008, 0
Endif
If (BOOLEAN012 && (STRING008 == YesChar())) Then
STRING017 = ""
STRING006 = ""
STRING007 = ""
WORD004 = 17
While (Strip(STRING017, " ") == "") Do
InputStr STRING029 + STRING012, STRING017, 0, 3, "1234567890", 4 + 2 + 256
If ((Strip(STRING017, " ") == "") && TBOOLEAN025(1)) Then
BOOLEAN002 = 0
Break
Continue
Endif
If ((Strip(STRING017, " ") == "") && !TBOOLEAN025(1)) Then
Continue
Endif
EndWhile
WORD004 = 18
Gosub LABEL114
While (Strip(STRING006, " ") == "") Do
InputStr STRING029 + STRING012, STRING006, 0, 4, "1234567890", 4 + 2 + 256
If ((Strip(STRING006, " ") == "") && TBOOLEAN025(1)) Then
BOOLEAN002 = 0
Break
Continue
Endif
If ((Strip(STRING006, " ") == "") && !TBOOLEAN025(1)) Then
Continue
Endif
EndWhile
WORD004 = 19
Gosub LABEL114
While (Strip(STRING007, " ") == "") Do
InputStr STRING029 + STRING012, STRING007, 0, 8, "1234567890", 4 + 2 + 256
If ((Strip(STRING007, " ") == "") && TBOOLEAN025(1)) Then
BOOLEAN002 = 0
Break
Continue
Endif
If ((Strip(STRING007, " ") == "") && !TBOOLEAN025(1)) Then
Continue
Endif
EndWhile
STRING008 = YesChar()
If (Len(Strip(STRING017 + STRING006 + STRING007, " ")) >= BYTE014) Then
OpText " " + STRING017 + "-" + STRING006 + "-" + STRING007
WORD004 = 20
Gosub LABEL114
InputYN STRING029 + STRING012, STRING008, 0
Select Case (Upper(STRING008))
Case NoChar()
BOOLEAN002 = 0
Case YesChar()
BOOLEAN002 = 1
BYTE017 = 3
BOOLEAN017 = 1
End Select
Else
OpText String(BYTE014)
WORD004 = 61
Gosub LABEL114
DispStr STRING029
WORD004 = 62
Gosub LABEL114
Log STRING029, 0
BOOLEAN002 = 0
PrintLn
Wait
Endif
Else
If ((BOOLEAN012 && (STRING008 == NoChar())) || ((Len(STRING021) <> 10) || (Len(STRING022) <> 10))) Then
STRING006 = ""
STRING007 = ""
Gosub LABEL075
If (!BOOLEAN011) Return
Else
DispFile TSTRING027(6), 2 + 1 + 4
STRING008 = "D"
WORD004 = 25
Gosub LABEL114
InputStr STRING029 + STRING012, STRING008, 0, 1, "DdHhEeRr", 2 + 4 + 8192 + 256
Select Case (Upper(STRING008))
Case "D"
If (Len(STRING022) >= BYTE014) Then
BOOLEAN002 = 1
BYTE017 = 1
Else
OpText String(BYTE014)
WORD004 = 61
Gosub LABEL114
DispStr STRING029
WORD004 = 62
Gosub LABEL114
Log STRING029, 0
BOOLEAN002 = 0
PrintLn
Wait
Endif
Case "H"
If (Len(STRING021) >= BYTE014) Then
BOOLEAN002 = 1
BYTE017 = 2
Else
OpText String(BYTE014)
WORD004 = 61
Gosub LABEL114
DispStr STRING029
WORD004 = 62
Gosub LABEL114
Log STRING029, 0
BOOLEAN002 = 0
PrintLn
Wait
Endif
Case "R"
BOOLEAN002 = 1
BOOLEAN011 = 0
Return
Case "E"
Gosub LABEL075
If (BOOLEAN011) Goto LABEL073
BOOLEAN011 = 1
BOOLEAN002 = 0
Endif
Endif
End Select
:LABEL073
Goto LABEL072
:LABEL074
Return
:LABEL075
STRING007 = STRING006
STRING006 = ""
WORD004 = 26
Gosub LABEL114
While (Strip(STRING006, " ") == "") Do
STRING006 = STRING007
InputStr STRING029 + STRING012, STRING006, 0, 3, "1234567890", 2 + 4 + 256
If ((Strip(STRING006, " ") == "") && TBOOLEAN025(1)) Then
BOOLEAN002 = 1
BOOLEAN011 = 0
Return
Continue
Endif
If ((Strip(STRING006, " ") == "") && !TBOOLEAN025(1)) Then
Continue
Endif
EndWhile
STRING007 = ""
WORD004 = 19
Gosub LABEL114
While (Strip(STRING007, " ") == "") Do
InputStr STRING029 + STRING012, STRING007, 0, 8, "123456789-0 ", 2 + 4 + 256
If ((Strip(STRING007, " ") == "") && TBOOLEAN025(1)) Then
BOOLEAN002 = 1
BOOLEAN011 = 0
Return
Continue
Endif
If ((Strip(STRING007, " ") == "") && !TBOOLEAN025(1)) Then
Continue
Endif
EndWhile
If (Len(Strip(Strip(STRING006 + STRING007, " "), "-")) >= BYTE014) Then
STRING008 = YesChar()
OpText " (" + STRING006 + ")" + " " + STRING007
WORD004 = 20
Gosub LABEL114
InputYN STRING029 + STRING012, STRING008, 0
PrintLn
Select Case (Upper(STRING008))
Case NoChar()
BOOLEAN002 = 0
Case YesChar()
BOOLEAN002 = 1
BYTE017 = 3
STRING007 = Strip(Strip(Strip(Strip(STRING007, " "), "-"), "("), ")")
End Select
Else
OpText String(BYTE014)
WORD004 = 61
Gosub LABEL114
DispStr STRING029
WORD004 = 62
Gosub LABEL114
Log STRING029, 0
BOOLEAN002 = 0
PrintLn
Wait
Endif
Return
:LABEL076
If (BOOLEAN017 == 0) Then
Select Case (BYTE017)
Case 1
STRING010 = Mid(STRING022, 1, 3)
STRING011 = Mid(STRING022, 4, 3)
STRING020 = Mid(STRING022, 7, 4)
Case 2
STRING010 = Mid(STRING021, 1, 3)
STRING011 = Mid(STRING021, 4, 3)
STRING020 = Mid(STRING021, 7, 4)
Case 3
STRING010 = STRING006
STRING011 = Mid(STRING007, 1, 3)
STRING020 = Mid(STRING007, 4, 4)
End Select
Else
STRING017 = Strip(STRING017, " ")
STRING006 = Strip(STRING006, " ")
STRING007 = Strip(STRING007, " ")
Endif
Return
:LABEL077
BOOLEAN014 = 0
If (Exist(TSTRING027(3))) Then
INTEGER003 = FileInf(TSTRING027(3), 4)
INTEGER006 = (INTEGER003 - 41) / 19
INTEGER013 = INTEGER006
INTEGER012 = 1
INTEGER010 = 1
FOpen 1, TSTRING027(3), 0, 0
If (Ferr(1)) Then
BOOLEAN019 = 1
Goto LABEL078
Endif
BOOLEAN019 = 0
:LABEL078
If (BOOLEAN019) Then
OpText TSTRING027(3)
WORD004 = 9
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 8
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + TSTRING027(3) , 0
WORD004 = 27
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
FClose 1
Goto LABEL118
Endif
FDefIn 1
While (INTEGER010 <= INTEGER006) Do
STRING030 = ""
FSeek 1, 41 + INTEGER010 * 19 - 19, 0
FDRead BOOLEAN003, 1
If (BOOLEAN003) Goto LABEL079
FDRead BOOLEAN026, 1
FRead 1, WORD007, 2
If ((PcbNode() == WORD007) || (WORD007 == 0)) Then
If (BOOLEAN017 && BOOLEAN012) Then
If (BOOLEAN026) Then
FDRead STRING008, 3
STRING008 = Upper(Strip(STRING008, " "))
For BYTE016 = 1 To Len(STRING017)
If (Mid(STRING008, BYTE016, 1) == "X") Then
STRING030 = STRING030 + Mid(STRING017, BYTE016, 1)
Continue
Endif
STRING030 = STRING030 + Mid(STRING008, BYTE016, 1)
Next
FDRead STRING008, 4
For BYTE016 = 1 To Len(STRING006)
If (Mid(STRING008, BYTE016, 1) == "X") Then
STRING030 = STRING030 + Mid(STRING006, BYTE016, 1)
Continue
Endif
STRING030 = STRING030 + Mid(STRING008, BYTE016, 1)
Next
FDRead STRING008, 8
STRING008 = Upper(Strip(STRING008, " "))
For BYTE016 = 1 To Len(STRING007)
If (Mid(STRING008, BYTE016, 1) == "X") Then
STRING030 = STRING030 + Mid(STRING007, BYTE016, 1)
Continue
Endif
STRING030 = STRING030 + Mid(STRING008, BYTE016, 1)
Next
If (STRING017 + STRING006 + STRING007 == STRING030) Then
BOOLEAN014 = 1
FClose 1
Return
Endif
Endif
Goto LABEL079
Endif
If (BOOLEAN026) Goto LABEL079
FDRead STRING008, 3
STRING008 = Upper(Strip(STRING008, " "))
For BYTE016 = 1 To Len(STRING010)
If (Mid(STRING008, BYTE016, 1) == "X") Then
STRING030 = STRING030 + Mid(STRING010, BYTE016, 1)
Continue
Endif
STRING030 = STRING030 + Mid(STRING008, BYTE016, 1)
Next
FDRead STRING008, 3
STRING008 = Upper(Strip(STRING008, " "))
For BYTE016 = 1 To Len(STRING011)
If (Mid(STRING008, BYTE016, 1) == "X") Then
STRING030 = STRING030 + Mid(STRING011, BYTE016, 1)
Continue
Endif
STRING030 = STRING030 + Mid(STRING008, BYTE016, 1)
Next
FSeek 1, 1, 1
FDRead STRING008, 4
STRING008 = Upper(Strip(STRING008, " "))
For BYTE016 = 1 To Len(STRING020)
If (Mid(STRING008, BYTE016, 1) == "X") Then
STRING030 = STRING030 + Mid(STRING020, BYTE016, 1)
Continue
Endif
STRING030 = STRING030 + Mid(STRING008, BYTE016, 1)
Next
If (STRING010 + STRING011 + STRING020 == STRING030) Then
BOOLEAN014 = 1
FClose 1
Return
Endif
Endif
:LABEL079
Gosub LABEL116
Inc INTEGER012
Inc INTEGER010
EndWhile
Color 7
FClose 1
Endif
Return
:LABEL080
BOOLEAN009 = 1
BOOLEAN010 = 1
BOOLEAN018 = 0
BOOLEAN014 = 1
If (Exist(TSTRING027(1)) && Exist(PPEPath() + "EDSALLOW.IDX")) Then
If (Exist(PPEPath() + "EDSDIAL.PLT")) Goto LABEL081
PrintLn
PrintLn "@X0CEDSBACK FATAL ERROR: NO DIALING TEMPLATE FILE EXISTS!"
PrintLn
Log "EDSBACK FATAL ERROR: NO DIALING TEMPLATE FILE!", 0
PrintLn "@X0FPlease ask your SysOp to create the dialing template file..."
PrintLn
Wait
Goto LABEL118
:LABEL081
WORD004 = 47
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029 + " "
FOpen 1, TSTRING027(1), 0, 0
If (Ferr(1)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText TSTRING027(1)
WORD004 = 9
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 8
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " " + TSTRING027(1) , 0
WORD004 = 27
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
FClose 1
Goto LABEL118
Endif
FOpen 2, PPEPath() + "EDSDIAL.PLT", 0, 0
If (Ferr(2)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText PPEPath() + "EDSDIAL.PLT"
WORD004 = 9
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 8
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " " + PPEPath() + "EDSDIAL.PLT", 0
WORD004 = 27
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
FClose 1
FClose 2
Goto LABEL118
Endif
FOpen 3, PPEPath() + "EDSALLOW.IDX", 0, 0
If (Ferr(3)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText PPEPath() + "EDSALLOW.IDX"
WORD004 = 9
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 8
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " " + PPEPath() + "EDSALLOW.IDX", 0
WORD004 = 27
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
FClose 1
FClose 2
FClose 3
Goto LABEL118
Endif
FDefIn 3
INTEGER014 = FileInf(PPEPath() + "EDSALLOW.IDX", 4)
INTEGER013 = (INTEGER014 - 41) / 8
If (BOOLEAN017) Then
INTEGER003 = S2I(STRING017, 10) + S2I(STRING006, 10)
Else
INTEGER003 = S2I(STRING010, 10) + S2I(STRING011, 10)
Endif
INTEGER007 = 0
INTEGER012 = 1
FSeek 3, 41, 0
While (INTEGER012 <= INTEGER013) Do
FDRead INTEGER006, 4
FDRead INTEGER010, 4
If ((INTEGER006 == 0) || (INTEGER006 == INTEGER003)) Then
Inc INTEGER007
FSeek 1, 41 + INTEGER012 * 29 - 29, 0
STRING030 = ""
FRead 1, BOOLEAN003, 1
If (BOOLEAN003) Goto LABEL084
FRead 1, BOOLEAN026, 1
If (BOOLEAN017 && BOOLEAN012) Then
If (BOOLEAN026) Then
FRead 1, STRING008, 3
STRING008 = Upper(Strip(STRING008, " "))
For BYTE016 = 1 To Len(STRING017)
If (Mid(STRING008, BYTE016, 1) == "X") Then
STRING030 = STRING030 + Mid(STRING017, BYTE016, 1)
Continue
Endif
STRING030 = STRING030 + Mid(STRING008, BYTE016, 1)
Next
FRead 1, STRING008, 4
STRING008 = Upper(Strip(STRING008, " "))
For BYTE016 = 1 To Len(STRING006)
If (Mid(STRING008, BYTE016, 1) == "X") Then
STRING030 = STRING030 + Mid(STRING006, BYTE016, 1)
Continue
Endif
STRING030 = STRING030 + Mid(STRING008, BYTE016, 1)
Next
FRead 1, STRING018, 10
STRING018 = Upper(Trim(STRING018, " "))
If (STRING017 + STRING006 == STRING030) Then
FreshLine
Gosub LABEL098
If (BOOLEAN014) Then
PrintLn
PrintLn "@X0CEDSBACK FATAL ERROR: " + STRING018 + " TEMPLATE NOT FOUND!"
PrintLn
Log STRING018 + " TEMPLATE NOT FOUND! EDSBACK HALTED!", 0
PrintLn "@X0FPlease ask your SysOp to check his/her dialing templates for accuracy..."
PrintLn
FClose 1
FClose 2
FClose 3
Wait
Goto LABEL118
Goto LABEL082
Endif
FClose 1
FClose 2
FClose 3
:LABEL082
Break
Endif
Endif
Goto LABEL084
Endif
If (BOOLEAN026) Goto LABEL084
FRead 1, STRING008, 3
STRING008 = Upper(Strip(STRING008, " "))
For BYTE016 = 1 To Len(STRING010)
If (Mid(STRING008, BYTE016, 1) == "X") Then
STRING030 = STRING030 + Mid(STRING010, BYTE016, 1)
Continue
Endif
STRING030 = STRING030 + Mid(STRING008, BYTE016, 1)
Next
FRead 1, STRING008, 3
STRING008 = Upper(Strip(STRING008, " "))
For BYTE016 = 1 To Len(STRING011)
If (Mid(STRING008, BYTE016, 1) == "X") Then
STRING030 = STRING030 + Mid(STRING011, BYTE016, 1)
Continue
Endif
STRING030 = STRING030 + Mid(STRING008, BYTE016, 1)
Next
FSeek 1, 1, 1
FRead 1, STRING018, 10
STRING018 = Trim(STRING018, " ")
If (STRING010 + STRING011 == STRING030) Then
FreshLine
Gosub LABEL098
If (BOOLEAN014) Then
PrintLn
PrintLn "@X0CEDSBACK FATAL ERROR: " + STRING018 + " TEMPLATE NOT FOUND!"
PrintLn
Log STRING018 + " TEMPLATE NOT FOUND! EDSBACK HALTED!", 0
PrintLn "@X0FPlease ask your SysOp to check his/her dialing templates for accuracy..."
PrintLn
FClose 1
FClose 2
FClose 3
Wait
Goto LABEL118
Goto LABEL083
Endif
FClose 1
FClose 2
FClose 3
:LABEL083
Break
Endif
Endif
:LABEL084
Gosub LABEL116
Inc INTEGER012
EndWhile
Color 7
FClose 1
FClose 2
FClose 3
Dec INTEGER012
Log "EDSBack Allowed #s (Scanned: " + String(INTEGER012) + " Searched: " + String(INTEGER007) + ")", 0
Else
PrintLn
PrintLn
PrintLn "@X0CYour SysOp has not yet created the allowed # calling index file..."
PrintLn "@X0ANotifying SysOp of this problem..."
PrintLn
PrintLn "@X0FEDSBACK HALTING: INDEX FILE NOT PRESENT"
Log "EDSBack Allowed # Index file not present... PLEASE CREATE!", 1
FClose 1
FClose 2
FClose 3
Goto LABEL118
Endif
If (BOOLEAN014) Then
WORD004 = 46
Gosub LABEL114
If (BOOLEAN027) Log STRING010 + "-" + STRING011 + "-" + STRING020 + " " + STRING029, 0
Endif
If ((Exist(TSTRING027(0)) && !TBOOLEAN025(2)) && (!BOOLEAN014 && !BOOLEAN008)) Then
If (Exist(PPEPath() + "TRASH.IDX")) Then
WORD004 = 69
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029 + " "
INTEGER007 = FileInf(PPEPath() + "TRASH.IDX", 4)
INTEGER013 = (INTEGER007 - 37) / 8
FOpen 1, TSTRING027(0), 0, 0
If (Ferr(1)) Then
BOOLEAN019 = 1
Goto LABEL085
Endif
BOOLEAN019 = 0
:LABEL085
If (BOOLEAN019) Then
OpText TSTRING027(0)
WORD004 = 9
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 8
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " " + TSTRING027(0) , 0
WORD004 = 27
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
FClose 1
Goto LABEL118
Endif
FOpen 2, PPEPath() + "TRASH.IDX", 0, 0
If (Ferr(2)) Then
BOOLEAN019 = 1
Goto LABEL086
Endif
BOOLEAN019 = 0
:LABEL086
If (BOOLEAN019) Then
OpText PPEPath() + "TRASH.IDX"
WORD004 = 9
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 8
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " " + PPEPath() + "TRASH.IDX", 0
WORD004 = 27
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
FClose 1
FClose 2
Goto LABEL118
Endif
FDefIn 2
If (BOOLEAN017) Then
INTEGER003 = S2I(STRING017, 10) + S2I(STRING006, 10) + S2I(STRING007, 10)
Goto LABEL087
Endif
INTEGER003 = S2I(STRING010, 10) + S2I(STRING011, 10) + S2I(STRING020, 10)
:LABEL087
INTEGER012 = 1
FSeek 2, 37, 0
INTEGER007 = 0
While (INTEGER012 <= INTEGER013) Do
FDRead INTEGER010, 4
FDRead INTEGER006, 4
If (INTEGER006 == INTEGER003) Then
Inc INTEGER007
FSeek 1, 37 + INTEGER010 * 59 - 59, 0
FRead 1, BOOLEAN003, 1
If (BOOLEAN003) Goto LABEL088
FRead 1, BOOLEAN026, 1
FRead 1, STRING022, 3
FRead 1, STRING008, 4
STRING022 = STRING022 + STRING008
FRead 1, STRING008, 8
STRING022 = STRING022 + STRING008
STRING022 = Strip(STRING022, " ")
FRead 1, STRING028, 25
STRING028 = Trim(STRING028, " ")
FRead 1, DATE003, 2
FRead 1, TIME001, 4
If (BOOLEAN017 == 0) Then
If (STRING022 == STRING010 + STRING011 + STRING020) Then
WORD004 = 50
Gosub LABEL114
BOOLEAN018 = 1
FClose 1
FClose 2
If (BOOLEAN027) Log STRING010 + "-" + STRING011 + "-" + STRING020 + " " + STRING029, 0
Break
Endif
Goto LABEL088
Endif
If (STRING022 == STRING017 + STRING006 + STRING007) Then
WORD004 = 50
Gosub LABEL114
BOOLEAN018 = 1
FClose 1
FClose 2
If (BOOLEAN027) Log STRING017 + "-" + STRING006 + "-" + STRING007 + " " + STRING029, 0
Break
Endif
Endif
:LABEL088
Gosub LABEL116
Inc INTEGER012
EndWhile
Color 7
FClose 1
FClose 2
Newline
PrintLn
Dec INTEGER012
Log "EDSBack Used # File (Scanned: " + String(INTEGER012) + " Searched: " + String(INTEGER007) + ")", 0
Goto LABEL089
Endif
PrintLn
PrintLn
PrintLn "@X0CYour SysOp has not yet created the trash index file..."
PrintLn "@X0ANotifying SysOp of this problem..."
PrintLn
PrintLn "@X0FEDSBACK HALTING: INDEX FILE NOT PRESENT"
Log "EDSBack Trash Index file not present... PLEASE CREATE!", 1
FClose 1
FClose 2
Goto LABEL118
Endif
:LABEL089
If (BOOLEAN018) Goto LABEL091
For INTEGER006 = 0 To 5
TSTRING025(INTEGER006) = ""
TTIME002(INTEGER006) = 0
TDATE004(INTEGER006) = 0
Next
If (Exist(PPEPath() + "EDSSTATS.DAT")) Then
INTEGER007 = FileInf(PPEPath() + "EDSSTATS.DAT", 4)
FOpen 1, PPEPath() + "EDSSTATS.DAT", 0, 0
If (Ferr(1)) Then
BOOLEAN019 = 1
Goto LABEL090
Endif
BOOLEAN019 = 0
:LABEL090
If (BOOLEAN019) Then
OpText "EDSSTATS.DAT"
WORD004 = 9
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 8
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " EDSSTATS.DAT", 0
WORD004 = 27
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
FClose 1
Return
Endif
FSeek 1, 47, 0
FRead 1, INTEGER011, 4
FSeek 1, 8, 1
For INTEGER006 = 0 To 5
FRead 1, TSTRING025(INTEGER006), 25
FRead 1, TDATE004(INTEGER006), 2
FRead 1, TTIME002(INTEGER006), 4
Next
FClose 1
Endif
For INTEGER006 = 0 To 5
If (Trim(TSTRING025(INTEGER006), " ") == "") Then
TSTRING025(INTEGER006) = " N/A"
TDATE004(INTEGER006) = 0
TTIME002(INTEGER006) = 0
Endif
Next
:LABEL091
Return
:LABEL092
If (!Exist(TSTRING027(2))) Return
INTEGER003 = FileInf(TSTRING027(2), 4)
INTEGER006 = (INTEGER003 - 39) / 28
INTEGER010 = 1
FOpen 1, TSTRING027(2), 0, 0
If (Ferr(1)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText TSTRING027(2)
WORD004 = 9
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 8
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " " + TSTRING027(2) , 0
WORD004 = 27
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
FClose 1
Goto LABEL118
Endif
FDefIn 1
While (INTEGER010 <= INTEGER006) Do
FSeek 1, 39 + INTEGER010 * 28 - 28, 0
FDRead BOOLEAN003, 1
If (BOOLEAN003) Goto LABEL093
FDRead WORD007, 2
If ((WORD007 == PcbNode()) || (WORD007 == 0)) Then
FDRead STRING008, 25
STRING008 = Upper(Trim(STRING008, " "))
If (InStr(Upper(U_Name()), STRING008) <> 0) Then
WORD004 = 22
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 23
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
WORD004 = 31
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
FClose 1
STRING008 = ""
Else
:LABEL093
Inc INTEGER010
EndWhile
FClose 1
STRING008 = ""
Return
:LABEL094
If (!Exist(TSTRING027(9))) Return
INTEGER003 = FileInf(TSTRING027(9), 4)
INTEGER006 = (INTEGER003 - 39) / 4
INTEGER010 = 1
FOpen 1, TSTRING027(9), 0, 0
If (Ferr(1)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText TSTRING027(9)
WORD004 = 9
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 8
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " " + TSTRING027(9) , 0
WORD004 = 27
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
FClose 1
Goto LABEL118
Endif
FDefIn 1
While (INTEGER010 <= INTEGER006) Do
FSeek 1, 39 + INTEGER010 * 4 - 4, 0
FDRead BOOLEAN003, 1
If (BOOLEAN003) Goto LABEL095
FDRead WORD007, 2
If ((WORD007 == PcbNode()) || (WORD007 == 0)) Then
FDRead BYTE016, 1
If (U_Sec == BYTE016) Then
WORD004 = 22
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 23
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
WORD004 = 31
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
FClose 1
Else
:LABEL095
Inc INTEGER010
EndWhile
FClose 1
Return
:LABEL096
INTEGER006 = 0
INTEGER010 = 0
STRING009 = ""
STRING009 = Strip(Upper(STRING013), " ")
For INTEGER010 = 1 To Len(STRING009)
INTEGER006 = INTEGER006 + Asc(Mid(STRING009, INTEGER010, 1))
Next
INTEGER006 = INTEGER006 + 5427
Inc INTEGER006
INTEGER010 = INTEGER006 / 2
INTEGER006 = INTEGER010 + INTEGER006
INTEGER006 = INTEGER006 + Len(STRING009)
INTEGER010 = INTEGER008
INTEGER006 = INTEGER006 + INTEGER010
INTEGER006 = INTEGER006 + INTEGER009
INTEGER006 = INTEGER006 - 34
BOOLEAN015 = 0
If (INTEGER004 == INTEGER006) Then
BOOLEAN015 = 1
Else
BOOLEAN015 = 0
Endif
If (BOOLEAN015) Goto LABEL097
Cls
PrintLn "@X0AEDSBack v1.21b @X0FCopyright (@X07c@X0F) 1994 by GO/4 Software"
PrintLn
Print "@X0CUNREGISTERED @X07delaying @X0E10"
Backup 2
INTEGER006 = 9
While ((INTEGER006 < 10) && (INTEGER006 >= 0)) Do
Delay 18
Print String(INTEGER006) + " "
Dec INTEGER006
Backup 2
EndWhile
PrintLn
:LABEL097
Return
:LABEL098
INTEGER003 = FileInf(PPEPath() + "EDSDIAL.PLT", 4)
INTEGER006 = (INTEGER003 - 41) / 28
INTEGER010 = 1
FSeek 2, 41, 0
While (INTEGER010 <= INTEGER006) Do
FRead 2, BOOLEAN003, 1
FRead 2, BOOLEAN026, 1
For BYTE016 = 0 To 5
FRead 2, TBYTE021(BYTE016), 1
Next
FRead 2, STRING008, 10
FRead 2, BYTE001, 1
FRead 2, BYTE002, 1
FRead 2, WORD006, 2
STRING008 = Trim(STRING008, " ")
FSeek 2, 6, 1
If (BOOLEAN003) Goto LABEL099
If (STRING008 == STRING018) Then
BOOLEAN014 = 0
If (BOOLEAN026) Then
BOOLEAN013 = 1
Else
BOOLEAN013 = 0
Endif
If (BOOLEAN008) BOOLEAN013 = 0
If (WORD006 <> 0) DATE002 = Date() + WORD006
Return
Else
BOOLEAN014 = 1
Endif
:LABEL099
Inc INTEGER010
EndWhile
Return
:LABEL100
PrintLn
Select Case (BYTE019)
Case 1
STRING009 = TSTRING027(8)
Case 2
STRING009 = PPEPath() + Mid(STRING018, 1, 8) + ".TBL"
STRING009 = Strip(Upper(STRING009), " ")
End Select
If (Exist(STRING009)) Then
INTEGER003 = FileInf(STRING009, 4)
INTEGER006 = (INTEGER003 - 43) / 25
FOpen 1, STRING009, 0, 0
If (Ferr(1)) Then
BOOLEAN019 = 1
Goto LABEL101
Endif
BOOLEAN019 = 0
:LABEL101
If (BOOLEAN019) Then
OpText STRING009
WORD004 = 9
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 8
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " " + STRING009, 0
WORD004 = 27
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
FClose 1
Goto LABEL118
Endif
BOOLEAN021 = 0
BOOLEAN022 = 0
INTEGER010 = 1
FDefIn 1
FSeek 1, 43, 0
While (!BOOLEAN021 && (INTEGER010 <= INTEGER006)) Do
FDRead BOOLEAN003, 1
FDRead WORD007, 2
FDRead DATE006, 2
FDRead TIME004, 4
FDRead DATE007, 2
FDRead TIME005, 4
FSeek 1, 10, 1
If ((!BOOLEAN003 && ((PcbNode() == WORD007) || (WORD007 == 0))) && (DATE006 + DATE007 + TIME004 + TIME005 <> 0)) Then
If (DATE006 == 0) DATE005 = Date()
If (DATE007 == 0) DATE008 = Date()
If (DATE005 <= Date()) Then
If (DATE008 >= Date()) Then
TIME003 = Time()
If (TIME004 <= TIME003) Then
If (TIME005 > TIME003) Then
BOOLEAN021 = 1
BOOLEAN022 = 1
Endif
Endif
Endif
Endif
Endif
Inc INTEGER010
EndWhile
FClose 1
Endif
Return
:LABEL102
If (Exist(PPEPath() + "EDSBACK.CAL")) Then
FAppend 1, PPEPath() + "EDSBACK.CAL", 1, 2
If (Ferr(1)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText PPEPath() + "EDSBACK.CAL"
WORD004 = 9
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 8
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " " + PPEPath() + "EDSBACK.CAL", 0
WORD004 = 27
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
Log "USER WAS CALLED BACK IN CBONLY MODE!", 0
FClose 1
Goto LABEL118
Endif
Else
FCreate 1, PPEPath() + "EDSBACK.CAL", 1, 2
If (Ferr(1)) Then
BOOLEAN019 = 1
Else
BOOLEAN019 = 0
Endif
If (BOOLEAN019) Then
OpText PPEPath() + "EDSBACK.CAL"
WORD004 = 9
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
WORD004 = 8
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " " + PPEPath() + "EDSBACK.CAL", 0
WORD004 = 27
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
Log "USER WAS CALLED BACK IN CBONLY MODE!", 0
FClose 1
Goto LABEL118
Endif
FPutLn 1, "EDSBack v1.21b Call-Back Only Mode Log"
FPutLn 1, "Log created at " + String(Time()) + " on " + String(Date())
FPutLn 1, "----------------------------------------------------------------"
FPutLn 1
Endif
FPutLn 1, U_Name() + " at " + String(Time()) + " on " + String(Date())
If (BOOLEAN017 && BOOLEAN012) Then
FPutLn 1, "Number called: " + STRING017 + "-" + STRING006 + "-" + STRING007
Else
FPutLn 1, "Number called: " + STRING010 + "-" + STRING011 + "-" + STRING020
Endif
FPutLn 1, "----------------------------------------------------------------"
FClose 1
Return
:LABEL103
BOOLEAN033 = 0
If (Exist(PPEPath() + "EDSCID.CFG")) Then
BOOLEAN033 = 1
FOpen 1, PPEPath() + "EDSCID.CFG", 0, 0
FGet 1, STRING008
FGet 1, STRING009
BYTE024 = S2I(STRING009, 10)
FGet 1, STRING009
WORD010 = S2I(STRING009, 10)
FGet 1, STRING009
BYTE023 = S2I(STRING009, 10)
FClose 1
STRING008 = Trim(STRING008, " ")
If (STRING008 <> "") Then
FOpen 1, STRING008, 0, 0
FDefIn 1
STRING008 = ""
:LABEL104
If (Ferr(1)) Goto LABEL105
FDGet STRING008
STRING008 = Strip(Strip(Strip(Strip(Strip(STRING008, " "), ")"), "("), "-"), "+")
If (STRING008 <> "") Gosub LABEL106
Goto LABEL104
:LABEL105
FClose 1
Else
STRING008 = CallId()
STRING008 = Strip(Strip(Strip(Strip(Strip(STRING008, " "), ")"), "("), "-"), "+")
Gosub LABEL106
Endif
Else
STRING008 = CallId()
STRING008 = Strip(Strip(Strip(Strip(Strip(STRING008, " "), ")"), "("), "-"), "+")
Gosub LABEL106
Endif
:LABEL106
STRING009 = ""
If ((InStr(STRING008, STRING022) <> 0) || (InStr(STRING008, STRING021) <> 0)) Then
WORD004 = 64
Gosub LABEL114
DispStr STRING029
If (!OnLocal() || BOOLEAN004) Then
WORD004 = 7
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
If (BOOLEAN033) Goto LABEL107
If (BYTE007 <> 0) U_Sec = BYTE007
If (DATE009 <> 0) U_ExpDate = DATE009
If (BYTE008 <> 0) U_ExpSec = BYTE008
Goto LABEL108
:LABEL107
If (BYTE024 <> 0) U_Sec = BYTE024
If (WORD010 <> 0) U_ExpDate = Date() + WORD010
If (BYTE023 <> 0) U_ExpSec = BYTE023
:LABEL108
PutUser
While (EvtTimeAdj()) Goto LABEL110
If (BOOLEAN016) Then
AdjTime INTEGER005
Goto LABEL109
Endif
AdjTime INTEGER005 - MinLeft()
:LABEL109
Goto LABEL111
:LABEL110
WORD004 = 40
Gosub LABEL114
If (BOOLEAN027) Log STRING029, 0
WORD004 = 34
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
:LABEL111
AdjDBytes INTEGER015
AdjTBytes INTEGER016
AdjTFiles WORD009
WORD004 = 29
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
If ((TSTRING027(10) <> "") && (TSTRING027(10) <> "NONE")) Then
OpText FileInf(TSTRING027(10), 8)
WORD004 = 33
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
Flag TSTRING027(10)
WORD004 = 41
Gosub LABEL114
If (BOOLEAN027) Log STRING029 + " " + FileInf(TSTRING027(10), 8) , 0
Delay 9
If (BOOLEAN029) Download ""
Endif
WORD004 = 31
Gosub LABEL114
If (BOOLEAN027) DispStr STRING029
Endif
WORD004 = 65
Gosub LABEL114
Log STRING029, 0
FClose 1
Else
Return
:LABEL112
STRING008 = Upper(GetEnv("EDSBACK"))
BOOLEAN030 = 0
BOOLEAN031 = 0
BOOLEAN032 = 0
If (InStr(STRING008, "/LOCALONLY")) Then
If (OnLocal()) Goto LABEL113
PrintLn
PrintLn "@X0CSorry, only local callers allowed on this node..."
PrintLn
Wait
Else
:LABEL113
If (InStr(STRING008, "/ALERT")) BOOLEAN030 = 1
If (InStr(STRING008, "/NOINFO")) BOOLEAN031 = 1
If (InStr(STRING008, "/BYPASS")) BOOLEAN032 = 1
STRING008 = ""
Return
:LABEL114
FSeek 5, 39 + WORD004 * 97 - 97, 0
FSeek 5, 1, 1
FRead 5, BOOLEAN027, 1
FRead 5, STRING012, 4
FRead 5, STRING029, 75
FRead 5, BOOLEAN028, 1
If (BOOLEAN028) PrintLn
Return
:LABEL115
Color 1
SPrint Chr(27) + "[2J"
SPrint " "
Print "@POFF@"
Color 16
SPrint "┌────────────────────────────────────────────────────────────────────────────"
Color 25
SPrint "┐"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 30
SPrint "Caller : "
Color 27
SPrint Left(Upper(U_Name()) + Space(29), 29)
Color 30
SPrint "From : "
Color 27
SPrint Left(Upper(U_City) + Space(30), 30)
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 30
SPrint "Upgraded Lvl : "
Color 27
If (BYTE001 <> 0) Then
STRING008 = String(BYTE001)
Else
STRING008 = "N/A"
Endif
SPrint Left(STRING008 + Space(23), 23)
Color 30
SPrint "New Exp. Date : "
Color 27
SPrint Left(String(DATE002) + Space(21), 21)
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 30
SPrint "Password: "
Color 27
SPrint Left(U_Pwd + Space(28), 28)
Color 30
SPrint "Node : "
Color 27
SPrint Left(PcbNode() + Space(30), 30)
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "┌────────────────────────────────────────────────────────────────────"
Color 16
SPrint "┐ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 31
SPrint "Total # Callbacks: "
Color 27
SPrint Left(String(INTEGER011) + Space(13), 13)
Color 31
SPrint "Delaying : "
Color 27
SPrint "No "
Color 31
SPrint "Date : "
Color 27
SPrint Left(String(Date()) + Space(9), 9)
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 31
SPrint "Dialing Template : "
Color 27
SPrint Left(STRING018 + Space(15), 15)
Color 31
SPrint "Logoff : "
Color 27
If (BOOLEAN013) Then
SPrint "Yes "
Else
SPrint "No "
Endif
Color 31
SPrint "Overseas: "
Color 27
If (BOOLEAN012 && BOOLEAN017) Then
SPrint "Yes "
Else
SPrint "No "
Endif
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 31
SPrint "Comment(s) to add: "
Color 27
Select Case (BYTE011)
Case 0
SPrint "None "
Case 1
SPrint "Date/Time "
Case 2
SPrint "Phone # "
Case 3
SPrint "Both (D/T/#) "
End Select
Color 31
SPrint " Message : "
Color 27
Select Case (BYTE010)
Case 1
SPrint "INT "
Case 2
SPrint "EXT "
Case 3
SPrint "None "
End Select
Color 27
If (BOOLEAN017 && BOOLEAN012) Then
SPrint Left(STRING017 + "-" + STRING006 + "-" + STRING007 + Space(19), 19)
Else
SPrint Left(STRING010 + "-" + STRING011 + "-" + STRING020 + Space(19), 19)
Endif
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 16
SPrint "┌─────────────────────────────────────────────────────────"
Color 25
SPrint "┐ "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 26
SPrint "ACTION"
Color 16
SPrint "│ "
Color 23
SPrint "Please wait, disconnecting caller... "
Color 25
SPrint "│ "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 16
SPrint "└"
Color 25
SPrint "─────────────────────────────────────────────────────────┘ "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 29
SPrint "Last 5 verifications "
Color 30
STRING008 = ReadLine(PCBDat(), 52)
STRING008 = Strip(STRING008, ":")
STRING008 = Strip(STRING008, " ")
If (STRING008 <> "NONE") Then
If (Mid(STRING008, 1, 1) == "C") Then
SPrint Mid(STRING008, 1, 3)
SPrint " "
SPrint Left(Mid(STRING008, 4, Len(STRING008) - 3) + Space(7), 7)
Else
Backup 1
SPrint Mid(STRING008, 1, 4)
SPrint " "
SPrint Left(Mid(STRING008, 5, Len(STRING008) - 4) + Space(7), 7)
Endif
Else
SPrint "LOCAL "
Endif
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 16
SPrint "┌───────────────────────────────────────────────"
Color 25
SPrint "┐ "
Color 16
SPrint "┌────────────"
Color 25
SPrint "┐ "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 16
SPrint "│"
Color 28
SPrint Left(Trim(TSTRING025(5), " ") + Space(28), 28)
Color 30
SPrint String(TDATE004(5)) + Space(3)
Color 31
SPrint String(TTIME002(5))
Color 25
SPrint "│ "
Color 16
SPrint "│ "
Color 26
SPrint "CONNECT "
Color 25
SPrint "│ "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 16
SPrint "│"
Color 28
SPrint Left(Trim(TSTRING025(4), " ") + Space(28), 28)
Color 30
SPrint String(TDATE004(4)) + Space(3)
Color 31
SPrint String(TTIME002(4))
Color 25
SPrint "│ "
Color 16
SPrint "│ "
Color 28
STRING008 = ""
STRING008 = ReadLine(PCBDat(), 53)
STRING008 = Strip(STRING008, " ")
SPrint Left(STRING008 + Space(9), 9)
Color 25
SPrint "│ "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 16
SPrint "│"
Color 28
SPrint Left(Trim(TSTRING025(3), " ") + Space(28), 28)
Color 30
SPrint String(TDATE004(3)) + Space(3)
Color 31
SPrint String(TTIME002(3))
Color 25
SPrint "│ "
Color 16
SPrint "│ "
Color 25
SPrint "────────── │ "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 16
SPrint "│"
Color 28
SPrint Left(Trim(TSTRING025(2), " ") + Space(28), 28)
Color 30
SPrint String(TDATE004(2)) + Space(3)
Color 31
SPrint String(TTIME002(2))
Color 25
SPrint "│ "
Color 16
SPrint "│ "
Color 26
SPrint "CARRIER "
Color 25
SPrint "│ "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 16
SPrint "│"
Color 28
SPrint Left(Trim(TSTRING025(1), " ") + Space(28), 28)
Color 30
SPrint String(TDATE004(1)) + Space(3)
Color 31
SPrint String(TTIME002(1))
Color 25
SPrint "│ "
Color 16
SPrint "│ "
Color 28
SPrint Left(String(Carrier()) + Space(9), 9)
Color 25
SPrint "│ "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "│ "
Color 16
SPrint "└"
Color 25
SPrint "───────────────────────────────────────────────┘ "
Color 16
SPrint "└"
Color 25
SPrint "────────────┘ "
Color 16
SPrint "│ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 25
SPrint "└"
Color 16
SPrint "────────────────────────────────────────────────────────────────────┘ "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "│ "
Color 26
SPrint "EDSBack v1.21b Copyright ("
Color 24
SPrint "c"
Color 26
SPrint ") 1994 by GO/4 Software "
Color 25
SPrint "│"
Color 1
SPrintLn
SPrint " "
Color 16
SPrint "└"
Color 25
SPrint "────────────────────────────────────────────────────────────────────────────┘"
Color 7
Return
:LABEL116
If ((INTEGER012 <> 0) && (INTEGER013 <> 0)) Then
If (INTEGER012 == 1) Then
BYTE022 = 0
Goto LABEL117
Endif
BYTE022 = REAL001
:LABEL117
REAL001 = ToReal(INTEGER012) / ToReal(INTEGER013)
REAL001 = FmtReal(REAL001 * 100, 1, 0)
If (BYTE022 <> REAL001) Then
Backup Len(String(BYTE022) + "%")
Print String(REAL001) + "%"
Endif
Endif
Return
Endif
Endif
Endif
Endif
Endif
Endif
:LABEL118
Gosub LABEL119
End
:LABEL119
FClose 5
KeyFlush
KbdChkOn
Color DefColor()
Cls
Return
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 1 End
; 6 Cls
; 13 Wait
; 258 Color
; 619 Goto
; 646 Let
; 29 Print
; 110 PrintLn
; 531 If
; 5 DispFile
; 5 FCreate
; 19 FOpen
; 1 FAppend
; 74 FClose
; 4 FGet
; 2 FPut
; 36 FPutLn
; 1 GetUser
; 7 PutUser
; 3 Delete
; 5 AdjTime
; 90 Log
; 7 InputStr
; 3 InputYN
; 205 Gosub
; 38 Return
; 5 PromptStr
; 1 DtrOn
; 1 DtrOff
; 4 CdChkOn
; 1 CdChkOff
; 39 Delay
; 2 SendModem
; 23 Inc
; 3 Dec
; 4 Newline
; 1 Newlines
; 1 GetToken
; 1 Shell
; 1 InputText
; 1 Call
; 13 Bye
; 5 KbdChkOn
; 1 KbdChkOff
; 41 OpText
; 77 DispStr
; 2 RdUNet
; 15 WrUNet
; 4 Backup
; 2 FreshLine
; 1 WrUSys
; 1 RdUSys
; 4 Message
; 1 SaveScrn
; 2 RestScrn
; 3 Sound
; 266 SPrint
; 37 SPrintLn
; 1 MPrint
; 2 MPrintLn
; 30 FSeek
; 40 FRead
; 41 FWrite
; 8 FDefIn
; 1 FDGet
; 69 FDRead
; 1 KbdFlush
; 19 KeyFlush
; 2 Flag
; 2 Download
; 2 AdjDBytes
; 2 AdjTBytes
; 2 AdjTFiles
;
;
; ■ Functions used :
;
; 1 +
; 3 -
; 8 *
; 16 /
; 634 +
; 37 -
; 133 ==
; 58 <>
; 30 <
; 34 <=
; 3 >
; 51 >=
; 372 !
; 107 &&
; 38 ||
; 41 Len(
; 50 Upper()
; 48 Mid()
; 42 Left()
; 59 Space()
; 22 Ferr()
; 54 Chr()
; 1 Asc()
; 7 InStr()
; 18 Trim()
; 26 Date()
; 24 Time()
; 15 U_Name()
; 4 NoChar()
; 11 YesChar()
; 1 Replace()
; 73 Strip()
; 101 String()
; 1 Mask_Pwd()
; 2 Mask_Ascii()
; 4 PCBDat()
; 60 PPEPath()
; 28 PcbNode()
; 4 ReadLine()
; 8 OnLocal()
; 14 UN_Stat()
; 15 UN_Name()
; 11 UN_City()
; 2 MinLeft()
; 1 GetEnv()
; 2 CallId()
; 20 Exist()
; 19 S2I()
; 4 Carrier()
; 1 CDOn()
; 6 LangExt()
; 2 DefColor()
; 12 Psa()
; 29 FileInf()
; 8 PPEName()
; 3 KInkey()
; 6 TempPath()
; 2 MGetByte()
; 5 ToReal()
; 1 ToInt()
; 2 EvtTimeAdj()
; 2 FmtReal()
;
;------------------------------------------------------------------------------
;
; Analysis flags : WABMSCafdH
;
; W - Write user ■ 5
; Program writes a user record. Although this may be normal for a
; User Editor, it may also be a way to modify an account level.
; ■ Search for : PUTUSER
;
; A - Adjust online time remaining ■ 5
; Program modify the amount of online time remaining, this may
; be a way to bypass time limits
; ■ Search for : ADJTIME
;
; B - Brute hangup ■ 1
; Program hangup without notification. This may be a good way to
; disconnect a user, but if used randomly, may be very nasty
; ■ Search for : HANGUP, DTROFF
;
; M - Send text to modem only ■ 4
; Some informations are sent only to the modem, not to the local
; screen, this is a well known way to make stealth backdoors, Check!
; ■ Search for : SENDMODEM, MPRINT, MPRINTLN
;
; S - Shell to DOS ■ 5
; This may be normal if the PPE need to execute an external command,
; but may be actually anything... nasty (formating HD, rebooting,...)
; or usefull (sorting, maintenance,...). Check!
; ■ Search for : SHELL
;
; C - Call child PPE ■ 3
; This is usually normal, but may be a tricky way to launch some
; sysop-only commands.
; ■ Search for : CALL
;
; a - Adjust ratio ■ 4
; User's ratio is adjusted by changing the amount of files/bytes
; uploaded. This may be normal for a user editor.
; ■ Search for : ADJBYTES, ADJDBYTES, ADJTBYTES, ADJTFILES
;
; f - Flag files for download ■ 3
; This may be normal if a PPE needs to send some files, but since
; this statement allows flagging of any file on the hard disk, you
; have to be carefull. Check!
; ■ Search for : FLAG
;
; d - Access PCBOARD.DAT ■ 2
; Program gets the full pathname to PCBOARD.DAT, this may be usefull
; for many PPE so they can find various informations on the system
; (system paths, max number of lines in messages, ...) but it may also
; be a way to gather vital informations.
; ■ Search for : PCBDAT()
;
; H - Read Password or Password History ■ 5
; Program is reading the user's password or last password history
; This may be ok for a password manager, but it is very suspect. Check!
; ■ Search for : U_PWDHIST, U_PWD
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 21 For/Next
; 25 While/EndWhile
; 238 If/Then or If/Then/Else
; 8 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------